Windows: Don't use %I for IP addresses
authorSimon Wilkinson <sxw@your-file-system.com>
Sun, 27 Mar 2011 20:06:27 +0000 (21:06 +0100)
committerJeffrey Altman <jaltman@openafs.org>
Sun, 27 Mar 2011 23:34:40 +0000 (16:34 -0700)
%I isn't supported by the roken printf functions. In preparation
for switching over to them, replace our use of asprintf to convert
IP addresses to strings with the afs_inet_ntoa_r function.

Change-Id: Id38dc56405071d62fb2b12e4f69905aa7a2026b0
Reviewed-on: http://gerrit.openafs.org/4362
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>

src/WINNT/afsd/cm_scache.c
src/WINNT/afsd/cm_volume.c

index 618f792..530ad89 100644 (file)
@@ -2009,7 +2009,9 @@ int cm_DumpSCache(FILE *outputFile, char *cookie, int lock)
         if (scp->cbServerp) {
             if (!((scp->cbServerp->flags & CM_SERVERFLAG_UUID) &&
                 UuidToString((UUID *)&scp->cbServerp->uuid, &srvStr) == RPC_S_OK)) {
-                afs_asprintf(&srvStr, "%.0I", scp->cbServerp->addr.sin_addr.s_addr);
+                srvStr = malloc(16); /* enough for 255.255.255.255 */
+                if (srvStr != NULL)
+                    afs_inet_ntoa_r(scp->cbServerp->addr.sin_addr.s_addr, srvStr);
                 srvStrRpc = FALSE;
             }
         }
index 5449d23..3357650 100644 (file)
@@ -1508,7 +1508,9 @@ int cm_DumpVolumes(FILE *outputFile, char *cookie, int lock)
         if (volp->cbServerpRO) {
             if (!((volp->cbServerpRO->flags & CM_SERVERFLAG_UUID) &&
                 UuidToString((UUID *)&volp->cbServerpRO->uuid, &srvStr) == RPC_S_OK)) {
-                afs_asprintf(&srvStr, "%.0I", volp->cbServerpRO->addr.sin_addr.s_addr);
+                srvStr = malloc(16);
+                if (srvStr != NULL)
+                    afs_inet_ntoa_r(volp->cbServerpRO->addr.sin_addr.s_addr, srvStr);
                 srvStrRpc = FALSE;
             }
         }