shishi-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fix adding keys.


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);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]