diff options
author | Simo Sorce <simo@redhat.com> | 2013-04-02 13:18:09 -0400 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2013-04-05 18:39:10 -0400 |
commit | f18a1dadd4508e74c0aed37d8ac92046c30fbfe7 (patch) | |
tree | a8fb87771e04ea77725f724f85da1ad0977ccac4 /utils/gssd/gssd.c | |
parent | 4dc4718becc20224b9da5657b8216af7d4da8ac5 (diff) | |
download | nfs-utils-f18a1dadd4508e74c0aed37d8ac92046c30fbfe7.tar.gz nfs-utils-f18a1dadd4508e74c0aed37d8ac92046c30fbfe7.tar.xz nfs-utils-f18a1dadd4508e74c0aed37d8ac92046c30fbfe7.zip |
Avoid reverse resolution for server name
A NFS client should be able to work properly even if the DNS Reverse record
for the server is not set. There is no excuse to forcefully prevent that
from working when it can.
This patch adds a new pair of options (-z/-Z) that allow to turn on/off
DNS reverse resolution for determining the server name to use with GSSAPI.
To avoid breaking current behavior the option defaults to off by default,
ideally we will turn this on by default after a transition period.
Signed-off-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'utils/gssd/gssd.c')
-rw-r--r-- | utils/gssd/gssd.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/utils/gssd/gssd.c b/utils/gssd/gssd.c index 07b1e52..1f0ac0c 100644 --- a/utils/gssd/gssd.c +++ b/utils/gssd/gssd.c @@ -85,7 +85,7 @@ sig_hup(int signal) static void usage(char *progname) { - fprintf(stderr, "usage: %s [-f] [-l] [-M] [-n] [-v] [-r] [-p pipefsdir] [-k keytab] [-d ccachedir] [-t timeout] [-R preferred realm]\n", + fprintf(stderr, "usage: %s [-f] [-l] [-M] [-n] [-v] [-r] [-p pipefsdir] [-k keytab] [-d ccachedir] [-t timeout] [-R preferred realm] [-z] [-Z]\n", progname); exit(1); } @@ -102,7 +102,7 @@ main(int argc, char *argv[]) char *progname; memset(ccachesearch, 0, sizeof(ccachesearch)); - while ((opt = getopt(argc, argv, "fvrlmnMp:k:d:t:R:")) != -1) { + while ((opt = getopt(argc, argv, "fvrlmnMp:k:d:t:R:zZ")) != -1) { switch (opt) { case 'f': fg = 1; @@ -150,6 +150,12 @@ main(int argc, char *argv[]) errx(1, "Encryption type limits not supported by Kerberos libraries."); #endif break; + case 'z': + avoid_ptr = 1; + break; + case 'Z': + avoid_ptr = 0; + break; default: usage(argv[0]); break; |