Author: jerry Date: 2005-08-12 16:08:40 +0000 (Fri, 12 Aug 2005) New Revision: 9267
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9267 Log: couple of small patches from Marcin * add missing piece to loadparm.c from a previous patch * fix handling of userdata in eventlog entries Modified: trunk/source/param/loadparm.c trunk/source/rpc_server/srv_eventlog_nt.c Changeset: Modified: trunk/source/param/loadparm.c =================================================================== --- trunk/source/param/loadparm.c 2005-08-12 16:03:21 UTC (rev 9266) +++ trunk/source/param/loadparm.c 2005-08-12 16:08:40 UTC (rev 9267) @@ -1159,6 +1159,7 @@ {"eventlog num records command", P_STRING, P_GLOBAL, &Globals.szEventLogNumRecordsCommand, handle_eventlog, NULL, FLAG_ADVANCED}, {"eventlog oldest record command", P_STRING, P_GLOBAL, &Globals.szEventLogOldestRecordCommand, handle_eventlog, NULL, FLAG_ADVANCED}, {"eventlog close command", P_STRING, P_GLOBAL, &Globals.szEventLogCloseCommand, handle_eventlog, NULL, FLAG_ADVANCED}, + {"eventlog control command", P_STRING, P_GLOBAL, &Globals.szEventLogControlCommand, handle_eventlog, NULL, FLAG_ADVANCED}, {"eventlog list", P_LIST, P_GLOBAL, &Globals.szEventLogs, NULL, NULL, FLAG_ADVANCED | FLAG_GLOBAL | FLAG_SHARE}, {"config file", P_STRING, P_GLOBAL, &Globals.szConfigFile, NULL, NULL, FLAG_HIDE}, Modified: trunk/source/rpc_server/srv_eventlog_nt.c =================================================================== --- trunk/source/rpc_server/srv_eventlog_nt.c 2005-08-12 16:03:21 UTC (rev 9266) +++ trunk/source/rpc_server/srv_eventlog_nt.c 2005-08-12 16:08:40 UTC (rev 9267) @@ -666,12 +666,14 @@ while(isspace(stop[0])) { stop++; } - memset(temp, 0, sizeof(temp)); - temp_len = strlen(stop); - strncpy(temp, stop, temp_len); - rpcstr_push((void *)(entry->data_record.user_data), temp, - sizeof(entry->data_record.user_data), STR_TERMINATE); - entry->data_record.user_data_len = (strlen_w((const smb_ucs2_t *)entry->data_record.user_data) * 2) + 2; + entry->data_record.user_data_len = strlen(stop); + memset(entry->data_record.user_data, 0, sizeof(entry->data_record.user_data)); + if(entry->data_record.user_data_len > 0) { + /* copy no more than the first 1024 bytes */ + if(entry->data_record.user_data_len > sizeof(entry->data_record.user_data)) + entry->data_record.user_data_len = sizeof(entry->data_record.user_data); + memcpy(entry->data_record.user_data, stop, entry->data_record.user_data_len); + } } else { /* some other eventlog entry -- not implemented, so dropping on the floor */ DEBUG(10, ("Unknown entry [%s]. Ignoring.\n", line));
