diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2016-04-20 12:10:55 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2016-04-20 17:31:01 +0200 |
commit | 34964273ee5f808eae601e32cb23275a8988e3e1 (patch) | |
tree | d75538a45fd4d141c7d9de5df6ed2f31fe53d5df /src/nm-audit-manager.c | |
parent | 22c11f8ef1529b2858c4946b2c666cca79908ef7 (diff) | |
download | NetworkManager-34964273ee5f808eae601e32cb23275a8988e3e1.tar.gz |
audit: log changed properties when updating a connection
The main purpose of audit logging is to understand who did what to the
system configuration, so it is useful to log also the list of changed
properties when a connection is updated:
op="connection-update"
uuid="2f3e48fc-5f47-41d9-9278-d2871378df43"
name="pppoe1"
args="pppoe.username,pppoe.password" <========
pid=9523
uid=1001
result="success"
Diffstat (limited to 'src/nm-audit-manager.c')
-rw-r--r-- | src/nm-audit-manager.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/nm-audit-manager.c b/src/nm-audit-manager.c index 728575f663..7096e81934 100644 --- a/src/nm-audit-manager.c +++ b/src/nm-audit-manager.c @@ -233,10 +233,10 @@ nm_audit_manager_audit_enabled (NMAuditManager *self) void _nm_audit_manager_log_connection_op (NMAuditManager *self, const char *file, guint line, const char *func, const char *op, NMSettingsConnection *connection, - gboolean result, gpointer subject_context, const char *reason) + gboolean result, const char *args, gpointer subject_context, const char *reason) { gs_unref_ptrarray GPtrArray *fields = NULL; - AuditField uuid_field = { }, name_field = { }; + AuditField uuid_field = { }, name_field = { }, args_field = { }; g_return_if_fail (op); @@ -252,6 +252,11 @@ _nm_audit_manager_log_connection_op (NMAuditManager *self, const char *file, gui g_ptr_array_add (fields, &name_field); } + if (args) { + _audit_field_init_string (&args_field, "args", args, FALSE, BACKEND_ALL); + g_ptr_array_add (fields, &args_field); + } + _audit_log_helper (self, fields, file, line, func, op, result, subject_context, reason); } |