diff options
author | David Hardeman <david@hardeman.nu> | 2015-01-21 16:28:05 -0500 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2015-01-23 14:19:09 -0500 |
commit | 7d206b6b4dab52f24cd14e8c64654acc373922c1 (patch) | |
tree | 085393997c3e7c4fa98d448ae7be7c847cd6ab40 | |
parent | 522838cae9d840d1696fcc0e7c70245027e44269 (diff) | |
download | nfs-utils-7d206b6b4dab52f24cd14e8c64654acc373922c1.tar.gz nfs-utils-7d206b6b4dab52f24cd14e8c64654acc373922c1.tar.xz nfs-utils-7d206b6b4dab52f24cd14e8c64654acc373922c1.zip |
gssd - simplify some option handling
Using PATH_MAX in modern code is almost always a bad idea. Simplify
the code and remove that arbitrary limitation at the same time.
Signed-off-by: David Hardeman <david@hardeman.nu>
Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r-- | utils/gssd/gssd.c | 12 | ||||
-rw-r--r-- | utils/gssd/gssd.h | 4 |
2 files changed, 6 insertions, 10 deletions
diff --git a/utils/gssd/gssd.c b/utils/gssd/gssd.c index 5e580e7..6147d30 100644 --- a/utils/gssd/gssd.c +++ b/utils/gssd/gssd.c @@ -67,8 +67,8 @@ #include "krb5_util.h" #include "nfslib.h" -static char pipefs_dir[PATH_MAX] = GSSD_PIPEFS_DIR; -char keytabfile[PATH_MAX] = GSSD_DEFAULT_KEYTAB_FILE; +static char *pipefs_dir = GSSD_PIPEFS_DIR; +char *keytabfile = GSSD_DEFAULT_KEYTAB_FILE; char ccachedir[PATH_MAX] = GSSD_DEFAULT_CRED_DIR ":" GSSD_USER_CRED_DIR; char *ccachesearch[GSSD_MAX_CCACHE_SEARCH + 1]; int use_memcache = 0; @@ -341,14 +341,10 @@ main(int argc, char *argv[]) rpc_verbosity++; break; case 'p': - strncpy(pipefs_dir, optarg, sizeof(pipefs_dir)); - if (pipefs_dir[sizeof(pipefs_dir)-1] != '\0') - errx(1, "pipefs path name too long"); + pipefs_dir = optarg; break; case 'k': - strncpy(keytabfile, optarg, sizeof(keytabfile)); - if (keytabfile[sizeof(keytabfile)-1] != '\0') - errx(1, "keytab path name too long"); + keytabfile = optarg; break; case 'd': strncpy(ccachedir, optarg, sizeof(ccachedir)); diff --git a/utils/gssd/gssd.h b/utils/gssd/gssd.h index e16b187..4059544 100644 --- a/utils/gssd/gssd.h +++ b/utils/gssd/gssd.h @@ -58,8 +58,8 @@ */ enum {AUTHTYPE_KRB5, AUTHTYPE_LIPKEY}; -extern char keytabfile[PATH_MAX]; -extern char *ccachesearch[]; +extern char *keytabfile; +extern char *ccachesearch[]; extern int use_memcache; extern int root_uses_machine_creds; extern unsigned int context_timeout; |