android_kernel_samsung_a7y1.../kernel
Richard Guy Briggs c989a76b97 audit: print empty EXECVE args
[ Upstream commit ea956d8be91edc702a98b7fe1f9463e7ca8c42ab ]

Empty executable arguments were being skipped when printing out the list
of arguments in an EXECVE record, making it appear they were somehow
lost.  Include empty arguments as an itemized empty string.

Reproducer:
	autrace /bin/ls "" "/etc"
	ausearch --start recent -m execve -i | grep EXECVE
	type=EXECVE msg=audit(10/03/2018 13:04:03.208:1391) : argc=3 a0=/bin/ls a2=/etc

With fix:
	type=EXECVE msg=audit(10/03/2018 21:51:38.290:194) : argc=3 a0=/bin/ls a1= a2=/etc
	type=EXECVE msg=audit(1538617898.290:194): argc=3 a0="/bin/ls" a1="" a2="/etc"

Passes audit-testsuite.  GH issue tracker at
https://github.com/linux-audit/audit-kernel/issues/99

Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
[PM: cleaned up the commit metadata]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-07 12:36:13 +02:00
..
bpf bpf: silence warning messages in core 2020-04-06 19:54:55 +02:00
configs
debug
events signal: Properly deliver SIGILL from uprobes 2020-04-07 12:27:23 +02:00
gcov
irq genirq: Prevent NULL pointer dereference in resend_irqs() 2020-04-06 21:35:35 +02:00
livepatch
locking locking/lockdep: Add debug_locks check in __lock_downgrade() 2020-04-07 07:36:48 +02:00
power
printk printk: fix integer overflow in setup_log_buf() 2020-04-07 12:34:15 +02:00
rcu
sched sched/fair: Don't increase sd->balance_interval on newidle balance 2020-04-07 12:36:11 +02:00
time alarmtimer: Change remaining ENOTSUPP to EOPNOTSUPP 2020-04-07 09:57:54 +02:00
trace tracing: Initialize iter->seq after zeroing in tracing_read_pipe() 2020-04-07 09:27:54 +02:00
acct.c
async.c
audit_fsnotify.c
audit_tree.c
audit_watch.c
audit.c
audit.h
auditfilter.c
auditsc.c audit: print empty EXECVE args 2020-04-07 12:36:13 +02:00
backtracetest.c
bounds.c
capability.c
cgroup_freezer.c
cgroup_pids.c
cgroup.c
compat.c
configs.c
context_tracking.c
cpu_pm.c
cpu.c
cpuset.c
crash_dump.c
cred.c access: avoid the RCU grace period for the temporary subjective credentials 2020-04-06 20:24:58 +02:00
delayacct.c
dma.c
elfcore.c kernel/elfcore.c: include proper prototypes 2020-04-07 08:08:10 +02:00
exec_domain.c
exit.c
extable.c
fork.c kernel/sysctl.c: do not override max_threads provided by userspace 2020-04-07 08:09:55 +02:00
freezer.c
futex_compat.c
futex.c
groups.c
hung_task.c
irq_work.c
jump_label.c
kallsyms.c
kaslr.c
kcmp.c
Kconfig.freezer
Kconfig.hz
Kconfig.locks
Kconfig.preempt
kcov.c
kexec_core.c
kexec_file.c
kexec_internal.h
kexec.c
kmod.c
kprobes.c kprobes: Don't call BUG_ON() if there is a kprobe in use on free list 2020-04-07 12:27:35 +02:00
ksysfs.c
kthread.c
latencytop.c
Makefile
membarrier.c
memremap.c
module_signing.c
module-internal.h
module.c kernel/module.c: Only return -EEXIST for modules that have finished loading 2020-04-06 20:26:45 +02:00
notifier.c
nsproxy.c
padata.c padata: use smp_mb in padata_reorder to avoid orphaned padata jobs 2020-04-06 20:04:27 +02:00
panic.c panic: ensure preemption is disabled during panic() 2020-04-07 08:08:25 +02:00
params.c
pid_namespace.c
pid.c
profile.c
ptrace.c
range.c
reboot.c
relay.c
resource.c
seccomp.c
signal.c signal: Always ignore SIGKILL and SIGSTOP sent to the global init 2020-04-07 12:27:21 +02:00
smp.c
smpboot.c
smpboot.h
softirq.c
stacktrace.c
stop_machine.c
sys_ni.c
sys.c
sysctl_binary.c
sysctl.c
task_work.c
taskstats.c
test_kprobes.c
torture.c
tracepoint.c
tsacct.c
uid16.c
up.c
user_namespace.c
user-return-notifier.c
user.c
utsname_sysctl.c
utsname.c
watchdog.c
workqueue_internal.h
workqueue.c