summaryrefslogtreecommitdiff
path: root/src/nm-audit-manager.c
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2016-04-20 12:10:55 +0200
committerBeniamino Galvani <bgalvani@redhat.com>2016-04-20 17:31:01 +0200
commit34964273ee5f808eae601e32cb23275a8988e3e1 (patch)
treed75538a45fd4d141c7d9de5df6ed2f31fe53d5df /src/nm-audit-manager.c
parent22c11f8ef1529b2858c4946b2c666cca79908ef7 (diff)
downloadNetworkManager-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.c9
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);
}