|
From: | shishi-commit |
Subject: | Fix adding keys. |
Date: | Wed, 10 Dec 2003 06:48:07 +0100 |
Commit from jas | 2003-12-10 06:48 CET |
Fix adding keys.
Module | File name | Revision | |||
---|---|---|---|---|---|
shishi | db/file.c | 1.15 | >>> | 1.16 | |
shishi | db/fileutil.c | 1.7 | >>> | 1.8 | |
shishi | db/fileutil.h | 1.3 | >>> | 1.4 |
shishi/db/file.c 1.15 >>> 1.16 |
---|
Line 532 |
_shisa_mkdir4 (info->path, realm, principal, "keys")) return SHISA_NO_KEY; |
- asprintf (&file, "%s/%s/%s/keys/%d.key", info->path, realm, principal, kvno); - fh = fopen (file, "w"); |
+ asprintf (&file, "keys/%d.key", kvno); + fh = _shisa_fopen4 (info->path, realm, principal, file, "w"); |
free (file); if (!fh) { |
shishi/db/fileutil.c 1.7 >>> 1.8 |
---|
Line 658 |
return rc; } |
+ + FILE * + _shisa_fopen4 (const char *path1, const char *realm, + const char *principal, const char *path4, + const char *mode) + { + char *saferealm = escape_filename (realm); + char *safeprincipal = escape_filename (principal); + char *tmp; + FILE *fh; + + asprintf (&tmp, "%s/%s/%s/%s", path1, saferealm, safeprincipal, path4); + free (saferealm); + free (safeprincipal); + + fh = fopen (tmp, mode); + + free (tmp); + + return fh; + } |
shishi/db/fileutil.h 1.3 >>> 1.4 |
---|
Line 1 |
+ /* Get fopen. */ + #include <stdio.h> + |
extern int _shisa_isdir (const char *path); extern int _shisa_isdir2 (const char *path1, const char *realm); extern int _shisa_isdir3 (const char *path1, const char *realm, |
Line 38 |
const char *principal, const char *path4); extern int _shisa_rm5 (const char *path1, const char *path2, const char *path3, const char *path4, const char *path5); |
+ extern FILE *_shisa_fopen4 (const char *path1, const char *realm, + const char *principal, const char *path4, + const char *mode); |
[Prev in Thread] | Current Thread | [Next in Thread] |