kauth: Don't overflow cell string
authorSimon Wilkinson <sxw@your-file-system.com>
Sat, 2 Mar 2013 09:33:12 +0000 (09:33 +0000)
committerJeffrey Altman <jaltman@your-file-system.com>
Thu, 7 Mar 2013 15:52:26 +0000 (07:52 -0800)
The cell string within a ktc_principal is only 64 characters long.
Be careful not to overflow it.

Caught by coverity (#985829)

Change-Id: I761dfcf5eebf1bd4ef31aa5982a2593e5317257b
Reviewed-on: http://gerrit.openafs.org/9350
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

src/kauth/knfs.c

index 4b4be5a..81a03d6 100644 (file)
@@ -183,7 +183,7 @@ GetTokens(afs_int32 ahost, afs_int32 auid)
                    sprintf(clientName.name, "Unix UID %d", ct.ViceId);
                    clientName.instance[0] = 0;
                }
-               strcpy(clientName.cell, tp);
+               strlcpy(clientName.cell, tp, sizeof(clientName.cell));
 
                tokenExpireTime = token.endTime;
                strcpy(UserName, clientName.name);