HDFS-7771. fuse_dfs should permit FILE: on the front of KRB5CCNAME (cmccabe)
(cherry picked from commit 50625e660a
)
This commit is contained in:
parent
744db47872
commit
2ca76df21a
|
@ -618,6 +618,9 @@ Release 2.7.0 - UNRELEASED
|
|||
HDFS-7736. Fix typos in dfsadmin/fsck/snapshotDiff usage messages.
|
||||
(Brahma Reddy Battula via wheat9)
|
||||
|
||||
HDFS-7771. fuse_dfs should permit FILE: on the front of KRB5CCNAME
|
||||
(cmccabe)
|
||||
|
||||
Release 2.6.1 - UNRELEASED
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#include <search.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/types.h>
|
||||
#include <utime.h>
|
||||
|
@ -358,6 +359,15 @@ static void hdfsConnExpiry(void)
|
|||
pthread_mutex_unlock(&gConnMutex);
|
||||
}
|
||||
|
||||
// The Kerberos FILE: prefix. This indicates that the kerberos ticket cache
|
||||
// specifier is a file. (Note that we also assume that the specifier is a file
|
||||
// if no prefix is present.)
|
||||
#define KRB_FILE_PREFIX "FILE:"
|
||||
|
||||
// Length of the Kerberos file prefix, which is equal to the string size in
|
||||
// bytes minus 1 (because we don't count the null terminator in the length.)
|
||||
#define KRB_FILE_PREFIX_LEN (sizeof(KRB_FILE_PREFIX) - 1)
|
||||
|
||||
/**
|
||||
* Find the Kerberos ticket cache path.
|
||||
*
|
||||
|
@ -414,6 +424,12 @@ done:
|
|||
} else {
|
||||
path[pathIdx] = '\0';
|
||||
}
|
||||
if (strncmp(path, KRB_FILE_PREFIX, KRB_FILE_PREFIX_LEN) == 0) {
|
||||
fprintf(stderr, "stripping " KRB_FILE_PREFIX " from the front of "
|
||||
"KRB5CCNAME.\n");
|
||||
memmove(path, path + KRB_FILE_PREFIX_LEN,
|
||||
strlen(path + KRB_FILE_PREFIX_LEN) + 1);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue