<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->
<configuration>
<!--
This file is bundled with the Drill JDBC driver in order to accommodate the
relocation of org.apache.hadoop to oadd.org.apache.hadoop that is specified
in exec/jdbc-all/pom.xml. The fully qualified class names in core-default.xml
in hadoop-common.jar are not updated by the Maven shade plugin so we override
them here.
-->
<property>
  <name>hadoop.security.group.mapping</name>
  <value>oadd.org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback</value>
</property>

<property>
  <name>hadoop.security.resolver.impl</name>
  <value>oadd.org.apache.hadoop.net.DNSDomainNameResolver</value>
</property>
</configuration>
