Steve Grubb 00064e
diff -urp audit-1.7.2/lib/audit_logging.c audit-1.7.3/lib/audit_logging.c
Steve Grubb 00064e
--- audit-1.7.2/lib/audit_logging.c	2008-04-01 12:25:33.000000000 -0400
Steve Grubb 00064e
+++ audit-1.7.3/lib/audit_logging.c	2008-04-11 17:07:24.000000000 -0400
Steve Grubb 00064e
@@ -633,7 +633,6 @@ int audit_log_user_command(int audit_fd,
Steve Grubb 00064e
 	// We borrow the commname buffer
Steve Grubb 00064e
 	if (getcwd(commname, PATH_MAX) == NULL)
Steve Grubb 00064e
 		strcpy(commname, "?");
Steve Grubb 00064e
-	strcpy(cwdname, commname);
Steve Grubb 00064e
 	p = commname;
Steve Grubb 00064e
 	len = strlen(commname);
Steve Grubb 00064e
 	while (*p) {
Steve Grubb 00064e
@@ -644,6 +643,8 @@ int audit_log_user_command(int audit_fd,
Steve Grubb 00064e
 		}
Steve Grubb 00064e
 		p++;
Steve Grubb 00064e
 	}
Steve Grubb 00064e
+	if (cwdenc == 0)
Steve Grubb 00064e
+		strcpy(cwdname, commname);
Steve Grubb 00064e
 
Steve Grubb 00064e
 	len = strlen(cmd);
Steve Grubb 00064e
 	// Trim the trailing carriage return and spaces
Steve Grubb 00064e
@@ -665,6 +666,8 @@ int audit_log_user_command(int audit_fd,
Steve Grubb 00064e
 		}
Steve Grubb 00064e
 		p++;
Steve Grubb 00064e
 	}
Steve Grubb 00064e
+	if (cmdenc == 0)
Steve Grubb 00064e
+		strcpy(commname, cmd);
Steve Grubb 00064e
 	free(cmd);
Steve Grubb 00064e
 
Steve Grubb 00064e
 	// Make the format string