Windows: Use secure ctime and strncpy in afs_ctime
authorJeffrey Altman <jaltman@secure-endpoints.com>
Tue, 8 Sep 2009 20:36:32 +0000 (16:36 -0400)
committerJeffrey Altman <jaltman|account-1000011@unknown>
Wed, 9 Sep 2009 04:29:13 +0000 (21:29 -0700)
Microsoft compilers version 1400 and above provide secure
versions of ctime and strncpy. Use them in afs_ctime.

Correction to sha1:359c64bb674ea0606e64b91fd8252297310a9862

Thanks to Andrew Deason for identifing the mistake.

Reviewed-on: http://gerrit.openafs.org/429
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>

src/util/afsutil.h

index 177a3f2..5b73ad4 100644 (file)
@@ -91,13 +91,13 @@ extern char *vctime(const time_t * atime);
 #else /* AFS_PTHREAD_ENV && !AFS_NT40_ENV */
 static_inline char *
 afs_ctime(const time_t *C, char *B, size_t S) {
-#if !defined(AFS_NT40_ENV) || (_MSC_VER < 1500)
+#if !defined(AFS_NT40_ENV) || (_MSC_VER < 1400)
     strncpy(B, ctime(C), (S-1));
     B[S-1] = '\0';
 #else
     char buf[32];
     if (ctime_s(buf, sizeof(buf), C) ||
-        strncpy_s(B, S, buf, _TRUNCATE)
+        strncpy_s(B, S, buf, _TRUNCATE))
          B[0] = '\0';
 #endif
     return B;