]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
DEVEL15-auditlog-fids-20081217
authorSteve McIntosh <stevemac@sinenomine.net>
Wed, 17 Dec 2008 18:12:10 +0000 (18:12 +0000)
committerDerrick Brashear <shadow@dementia.org>
Wed, 17 Dec 2008 18:12:10 +0000 (18:12 +0000)
LICENSE IPL10
FIXES 123922

make auditlog process multiple fids correctly

(cherry picked from commit 8271c1674f75f80804d08e0f4ed3178b61b29eff)

src/audit/audit.c

index 2dfd5d2696f4781f4055377c3b0bd4442e3f90df..96283f213214ec1c81a211e76dbaa99f6e43a53a 100644 (file)
@@ -233,24 +233,21 @@ printbuf(FILE *out, int rec, char *audEvent, char *afsName, afs_int32 hostId,
            break;
        case AUD_FIDS:          /* array of Fids */
            vaFids = va_arg(vaList, struct AFSCBFids *);
-           vaFid = NULL;
 
            if (vaFids) {
                 int i;
-                if (vaFid)
+                
+                vaFid = vaFids->AFSCBFids_val;
+                
+                if (vaFid) {
                     fprintf(out, "FIDS %u FID %u:%u:%u ", vaFids->AFSCBFids_len, vaFid->Volume,
                              vaFid->Vnode, vaFid->Unique);
-                else
+                    for ( i = 1; i < vaFids->AFSCBFids_len; i++, vaFid++ ) 
+                        fprintf(out, "FID %u:%u:%u ", vaFid->Volume,
+                                vaFid->Vnode, vaFid->Unique);
+                } else
                     fprintf(out, "FIDS 0 FID 0:0:0 ");
 
-                for ( i = 1; i < vaFids->AFSCBFids_len; i++ ) {
-                    vaFid = vaFids->AFSCBFids_val;
-                    if (vaFid)
-                        fprintf(out, "FID %u:%u:%u ", vaFid->Volume,
-                                 vaFid->Vnode, vaFid->Unique);
-                    else
-                        fprintf(out, "FID 0:0:0 ");
-                }
             }
            break;
        default: