summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2003-06-11 20:32:22 +0000
committerTom Yu <tlyu@mit.edu>2003-06-11 20:32:22 +0000
commitacd06d06713d8b37480631a5d6584bd52814eaf8 (patch)
tree3b89bcbc1d1ceca2717a6e8d63f0403768771c03 /src
parentbf302784f8740558a698070bce3418d6f3c66b7d (diff)
downloadkrb5-acd06d06713d8b37480631a5d6584bd52814eaf8.tar.gz
krb5-acd06d06713d8b37480631a5d6584bd52814eaf8.tar.xz
krb5-acd06d06713d8b37480631a5d6584bd52814eaf8.zip
Don't escape rcache filename characters with backslash
* srv_rcache.c (krb5_get_server_rcache): Octal escapes begin with hyphen now, since backslash is a pathname separator on DOS. ticket: new target_version: 1.3 component: krb5-libs tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15609 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/krb/ChangeLog5
-rw-r--r--src/lib/krb5/krb/srv_rcache.c10
2 files changed, 10 insertions, 5 deletions
diff --git a/src/lib/krb5/krb/ChangeLog b/src/lib/krb5/krb/ChangeLog
index a0106c0d98..3b5287f0c4 100644
--- a/src/lib/krb5/krb/ChangeLog
+++ b/src/lib/krb5/krb/ChangeLog
@@ -1,3 +1,8 @@
+2003-06-11 Tom Yu <tlyu@mit.edu>
+
+ * srv_rcache.c (krb5_get_server_rcache): Octal escapes begin with
+ hyphen now, since backslash is a pathname separator on DOS.
+
2003-06-06 Sam Hartman <hartmans@mit.edu>
* get_in_tkt.c (krb5_get_init_creds): Mask out renewable_ok if the
diff --git a/src/lib/krb5/krb/srv_rcache.c b/src/lib/krb5/krb/srv_rcache.c
index e2e5ed6900..e66d2d3667 100644
--- a/src/lib/krb5/krb/srv_rcache.c
+++ b/src/lib/krb5/krb/srv_rcache.c
@@ -61,7 +61,7 @@ krb5_get_server_rcache(krb5_context context, const krb5_data *piece, krb5_rcache
len = piece->length + 3 + 1;
for (i = 0; i < piece->length; i++) {
- if (piece->data[i] == '\\')
+ if (piece->data[i] == '-')
len++;
else if (!isvalidrcname((int) piece->data[i]))
len += 3;
@@ -81,14 +81,14 @@ krb5_get_server_rcache(krb5_context context, const krb5_data *piece, krb5_rcache
strcpy(cachename, "rc_");
p = 3;
for (i = 0; i < piece->length; i++) {
- if (piece->data[i] == '\\') {
- cachename[p++] = '\\';
- cachename[p++] = '\\';
+ if (piece->data[i] == '-') {
+ cachename[p++] = '-';
+ cachename[p++] = '-';
continue;
}
if (!isvalidrcname((int) piece->data[i])) {
sprintf(tmp, "%03o", piece->data[i]);
- cachename[p++] = '\\';
+ cachename[p++] = '-';
cachename[p++] = tmp[0];
cachename[p++] = tmp[1];
cachename[p++] = tmp[2];