The branch, master has been updated via 42e4691cf55 audit_logging: Simplify json_add_stringn() with json_stringn() via a9f358f7d71 tevent: Fix a typo via 544c7285a22 libsmb: A bit README.Coding for cli_qpathinfo2() via fab10b58daf smbd: Pass down "dirfsp" to smb_unix_mknod() via 3ee9fe28d43 smbd: Use "dirfsp" in smb_posix_unlink() via 4da367c31b1 smbd: Use "dirfsp" in smb_posix_open() via 6527211aefc smbstatus: Fix CID 1507865 Uninitialized pointer read via 688891f4752 smbstatus: Fix CID 1507870 Uninitialized pointer read via 0382e072222 dbwrap: Simplify dbwrap_change_int32_atomic_action() via ad0986652dc dbwrap: Simplify dbwrap_change_uint32_atomic_action() via d40d130b974 smbd: Fix DBG macro via 0c645107cdb smbd: Use struct initialization via ac738e303e1 lib: Move few bytes of R/W data to R/O text via 0bcba393f76 idmap:fix whitespace via b7e0f3423ca idmap_tdb: Remove a variable never used via 0c6ac3218d7 idmap: Fix whitespace via 2bea8a80e57 passdb: Fix a DBG statement via 753e271ec32 passdb: Fix whitespace via b69380251d6 passdb: Fix a DBG message from d79d0508a4b s3: smbd: Add missing 'return;'s in exit paths in reply_exit_done().
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 42e4691cf555b9670c5af8d8452c59220f0aa45d Author: Volker Lendecke <v...@samba.org> Date: Thu Aug 10 15:05:22 2023 +0200 audit_logging: Simplify json_add_stringn() with json_stringn() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> Autobuild-User(master): Jeremy Allison <j...@samba.org> Autobuild-Date(master): Mon Aug 14 20:51:11 UTC 2023 on atb-devel-224 commit a9f358f7d71659d4faed27b486d787c05f384196 Author: Volker Lendecke <v...@samba.org> Date: Wed Aug 9 16:22:03 2023 +0200 tevent: Fix a typo Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 544c7285a22168e93f081eed5166bc8b5a313a79 Author: Volker Lendecke <v...@samba.org> Date: Wed Jul 5 11:58:39 2023 +0200 libsmb: A bit README.Coding for cli_qpathinfo2() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit fab10b58daf91f3810e12c7d3f188a5130f66d1d Author: Volker Lendecke <v...@samba.org> Date: Wed Jul 5 08:27:03 2023 +0200 smbd: Pass down "dirfsp" to smb_unix_mknod() Avoids a call to parent_pathref() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 3ee9fe28d43ac61aabb781c9a0b50e88cc3aa167 Author: Volker Lendecke <v...@samba.org> Date: Tue Jul 4 17:21:32 2023 +0200 smbd: Use "dirfsp" in smb_posix_unlink() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 4da367c31b195007c7226a83174a27170f1d9278 Author: Volker Lendecke <v...@samba.org> Date: Tue Jul 4 17:19:40 2023 +0200 smbd: Use "dirfsp" in smb_posix_open() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 6527211aefc5ca20a7a1162c529885ed4b994e63 Author: Volker Lendecke <v...@samba.org> Date: Wed Aug 2 18:39:20 2023 +0200 smbstatus: Fix CID 1507865 Uninitialized pointer read Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 688891f4752c5d30dd6fe9e339342340716aa277 Author: Volker Lendecke <v...@samba.org> Date: Wed Aug 2 18:38:22 2023 +0200 smbstatus: Fix CID 1507870 Uninitialized pointer read Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 0382e0722221051f786b83cd8204a7484efc7a34 Author: Volker Lendecke <v...@samba.org> Date: Thu Jul 13 01:19:43 2023 +0200 dbwrap: Simplify dbwrap_change_int32_atomic_action() Use dbwrap_do_locked() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit ad0986652dc59d28422bb580ded6de27ad8aebe4 Author: Volker Lendecke <v...@samba.org> Date: Thu Jul 13 01:03:14 2023 +0200 dbwrap: Simplify dbwrap_change_uint32_atomic_action() Use dbwrap_do_locked() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit d40d130b97485e867a0fc1c172884636815e6697 Author: Volker Lendecke <v...@samba.org> Date: Thu Jul 27 00:47:23 2023 +0200 smbd: Fix DBG macro This augments 5c37615efa2, the DBG macros already prepend the the function name Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 0c645107cdbd5a7015b1aa12f3abaa7dd3490aee Author: Volker Lendecke <v...@samba.org> Date: Wed Jul 26 16:49:24 2023 +0200 smbd: Use struct initialization Avoid an explicit ZERO_STRUCT Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit ac738e303e184b06f2a2ab8726de879e245645f0 Author: Volker Lendecke <v...@samba.org> Date: Mon Jul 10 18:17:36 2023 +0200 lib: Move few bytes of R/W data to R/O text Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 0bcba393f76b63909cc7d666794e6e9c3acfeb0e Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 18:01:43 2023 +0100 idmap:fix whitespace Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit b7e0f3423ca37406eeb8428cbed99de5e0c07065 Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 11:04:24 2023 +0100 idmap_tdb: Remove a variable never used Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 0c6ac3218d790fb80864b6b6d13169bbc260b456 Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 11:03:28 2023 +0100 idmap: Fix whitespace Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 2bea8a80e576714227de8bcc61dbf2c6d1e4d744 Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 10:28:26 2023 +0100 passdb: Fix a DBG statement This is not pdb_getsampwent() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit 753e271ec3212e6803d333030aa282fb77a293b0 Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 10:16:41 2023 +0100 passdb: Fix whitespace Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> commit b69380251d68925f5b91d06d3b1cf201291c0df9 Author: Volker Lendecke <v...@samba.org> Date: Tue Jan 24 10:00:25 2023 +0100 passdb: Fix a DBG message This is not dsdb_add_domain_alias() Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> ----------------------------------------------------------------------- Summary of changes: lib/audit_logging/audit_logging.c | 8 +- lib/audit_logging/tests/audit_logging_error_test.c | 19 ++- lib/audit_logging/wscript_build | 1 + lib/dbwrap/dbwrap_util.c | 131 ++++++++++--------- lib/tevent/doc/tevent_request.dox | 2 +- libcli/security/util_sid.c | 58 +++++---- source3/libsmb/clirap.c | 8 +- source3/passdb/pdb_interface.c | 72 +++++------ source3/passdb/pdb_samba_dsdb.c | 3 +- source3/passdb/pdb_smbpasswd.c | 76 +++++------ source3/passdb/pdb_tdb.c | 22 ++-- source3/smbd/smb1_trans2.c | 139 +++++++++++++-------- source3/smbd/smbXsrv_tcon.c | 118 ++++++++--------- source3/utils/status_json.c | 8 +- source3/winbindd/idmap_passdb.c | 10 +- source3/winbindd/idmap_tdb.c | 12 +- source3/winbindd/idmap_tdb2.c | 12 +- 17 files changed, 375 insertions(+), 324 deletions(-) Changeset truncated at 500 lines: diff --git a/lib/audit_logging/audit_logging.c b/lib/audit_logging/audit_logging.c index 496e347659c..8ed15edffb6 100644 --- a/lib/audit_logging/audit_logging.c +++ b/lib/audit_logging/audit_logging.c @@ -644,13 +644,7 @@ int json_add_stringn(struct json_object *object, } if (value != NULL && len > 0) { - json_t *string = NULL; - char buffer[len+1]; - - strncpy(buffer, value, len); - buffer[len] = '\0'; - - string = json_string(buffer); + json_t *string = json_stringn(value, len); if (string == NULL) { DBG_ERR("Unable to add string [%s], " "could not create string object\n", diff --git a/lib/audit_logging/tests/audit_logging_error_test.c b/lib/audit_logging/tests/audit_logging_error_test.c index a7bea9d0532..12a81ff018d 100644 --- a/lib/audit_logging/tests/audit_logging_error_test.c +++ b/lib/audit_logging/tests/audit_logging_error_test.c @@ -118,6 +118,21 @@ json_t *__wrap_json_string(const char *value) return __real_json_string(value); } +/* + * cmocka wrappers for json_stringn + */ +json_t *__wrap_json_stringn(const char *value, size_t len); +json_t *__real_json_stringn(const char *value, size_t len); +json_t *__wrap_json_stringn(const char *value, size_t len) +{ + + bool fail = (bool)mock(); + if (fail) { + return NULL; + } + return __real_json_stringn(value, len); +} + /* * cmocka wrappers for json_dumps */ @@ -510,7 +525,7 @@ static void test_json_add_stringn(_UNUSED_ void **state) /* * Test json string failure */ - will_return(__wrap_json_string, true); + will_return(__wrap_json_stringn, true); rc = json_add_stringn(&object, "name", "value", 3); assert_false(json_is_invalid(&object)); @@ -519,7 +534,7 @@ static void test_json_add_stringn(_UNUSED_ void **state) /* * Test json object set new failure */ - will_return(__wrap_json_string, false); + will_return(__wrap_json_stringn, false); will_return(__wrap_json_object_set_new, JANSSON_FAILURE); rc = json_add_stringn(&object, "name", "value", 3); diff --git a/lib/audit_logging/wscript_build b/lib/audit_logging/wscript_build index 3d530975ac6..90c48eedffb 100644 --- a/lib/audit_logging/wscript_build +++ b/lib/audit_logging/wscript_build @@ -47,6 +47,7 @@ if bld.AD_DC_BUILD_IS_ENABLED(): -Wl,--wrap,json_array_extend -Wl,--wrap,json_object -Wl,--wrap,json_string + -Wl,--wrap,json_stringn -Wl,--wrap,json_integer -Wl,--wrap,json_array -Wl,--wrap,json_dumps diff --git a/lib/dbwrap/dbwrap_util.c b/lib/dbwrap/dbwrap_util.c index df6dea40097..312fb418754 100644 --- a/lib/dbwrap/dbwrap_util.c +++ b/lib/dbwrap/dbwrap_util.c @@ -156,50 +156,59 @@ struct dbwrap_change_uint32_atomic_context { const char *keystr; uint32_t *oldval; uint32_t change_val; + NTSTATUS status; }; -static NTSTATUS dbwrap_change_uint32_atomic_action(struct db_context *db, - void *private_data) +static void dbwrap_change_uint32_atomic_action_fn(struct db_record *rec, + TDB_DATA value, + void *private_data) { - struct db_record *rec; - uint32_t val = (uint32_t)-1; - uint32_t v_store; - NTSTATUS ret; - struct dbwrap_change_uint32_atomic_context *state; - TDB_DATA value; - - state = (struct dbwrap_change_uint32_atomic_context *)private_data; - - rec = dbwrap_fetch_locked(db, talloc_tos(), - string_term_tdb_data(state->keystr)); - if (!rec) { - return NT_STATUS_UNSUCCESSFUL; - } - - value = dbwrap_record_get_value(rec); + struct dbwrap_change_uint32_atomic_context *state = private_data; + uint8_t v_store[4]; + TDB_DATA data = { + .dptr = v_store, + .dsize = sizeof(v_store), + }; + uint32_t val = UINT32_MAX; if (value.dptr == NULL) { val = *(state->oldval); } else if (value.dsize == sizeof(val)) { - val = IVAL(value.dptr, 0); + val = PULL_LE_U32(value.dptr, 0); *(state->oldval) = val; } else { - ret = NT_STATUS_UNSUCCESSFUL; - goto done; + state->status = NT_STATUS_UNSUCCESSFUL; + return; } val += state->change_val; + PUSH_LE_U32(v_store, 0, val); - SIVAL(&v_store, 0, val); + state->status = dbwrap_record_store(rec, data, TDB_REPLACE); +} - ret = dbwrap_record_store(rec, - make_tdb_data((const uint8_t *)&v_store, - sizeof(v_store)), - TDB_REPLACE); +static NTSTATUS dbwrap_change_uint32_atomic_action(struct db_context *db, + void *private_data) +{ + struct dbwrap_change_uint32_atomic_context *state = private_data; + NTSTATUS status; -done: - TALLOC_FREE(rec); - return ret; + status = dbwrap_do_locked(db, + string_term_tdb_data(state->keystr), + dbwrap_change_uint32_atomic_action_fn, + state); + if (!NT_STATUS_IS_OK(status)) { + DBG_DEBUG("dbwrap_do_locked() failed: %s\n", + nt_errstr(status)); + return status; + } + if (!NT_STATUS_IS_OK(state->status)) { + DBG_DEBUG("dbwrap_change_uint32_atomic_action_fn() " + "failed: %s\n", + nt_errstr(status)); + return status; + } + return NT_STATUS_OK; } NTSTATUS dbwrap_change_uint32_atomic_bystring(struct db_context *db, @@ -248,49 +257,59 @@ struct dbwrap_change_int32_atomic_context { TDB_DATA key; int32_t *oldval; int32_t change_val; + NTSTATUS status; }; -static NTSTATUS dbwrap_change_int32_atomic_action(struct db_context *db, - void *private_data) +static void dbwrap_change_int32_atomic_action_fn(struct db_record *rec, + TDB_DATA value, + void *private_data) { - struct db_record *rec; + struct dbwrap_change_int32_atomic_context *state = private_data; + uint8_t v_store[4]; + TDB_DATA data = { + .dptr = v_store, + .dsize = sizeof(v_store), + }; int32_t val = -1; - int32_t v_store; - NTSTATUS ret; - struct dbwrap_change_int32_atomic_context *state; - TDB_DATA value; - - state = (struct dbwrap_change_int32_atomic_context *)private_data; - - rec = dbwrap_fetch_locked(db, talloc_tos(), state->key); - if (!rec) { - return NT_STATUS_UNSUCCESSFUL; - } - - value = dbwrap_record_get_value(rec); if (value.dptr == NULL) { val = *(state->oldval); } else if (value.dsize == sizeof(val)) { - val = IVAL(value.dptr, 0); + val = PULL_LE_U32(value.dptr, 0); *(state->oldval) = val; } else { - ret = NT_STATUS_UNSUCCESSFUL; - goto done; + state->status = NT_STATUS_UNSUCCESSFUL; + return; } val += state->change_val; + PUSH_LE_U32(v_store, 0, val); - SIVAL(&v_store, 0, val); + state->status = dbwrap_record_store(rec, data, TDB_REPLACE); +} - ret = dbwrap_record_store(rec, - make_tdb_data((const uint8_t *)&v_store, - sizeof(v_store)), - TDB_REPLACE); +static NTSTATUS dbwrap_change_int32_atomic_action(struct db_context *db, + void *private_data) +{ + struct dbwrap_change_int32_atomic_context *state = private_data; + NTSTATUS status; -done: - TALLOC_FREE(rec); - return ret; + status = dbwrap_do_locked(db, + state->key, + dbwrap_change_int32_atomic_action_fn, + state); + if (!NT_STATUS_IS_OK(status)) { + DBG_DEBUG("dbwrap_do_locked() failed: %s\n", + nt_errstr(status)); + return status; + } + if (!NT_STATUS_IS_OK(state->status)) { + DBG_DEBUG("dbwrap_change_int32_atomic_action_fn() " + "failed: %s\n", + nt_errstr(status)); + return status; + } + return NT_STATUS_OK; } NTSTATUS dbwrap_change_int32_atomic(struct db_context *db, diff --git a/lib/tevent/doc/tevent_request.dox b/lib/tevent/doc/tevent_request.dox index e1e45b170a5..bda6f766c93 100644 --- a/lib/tevent/doc/tevent_request.dox +++ b/lib/tevent/doc/tevent_request.dox @@ -184,6 +184,6 @@ tevent_wakeup_recv() ) A comprehensive example of nested subrequests can be found in the file echo_server.c. It implements a complete, self-contained echo server with no -dependencies but libevent and libtalloc. +dependencies but libtevent and libtalloc. */ diff --git a/libcli/security/util_sid.c b/libcli/security/util_sid.c index b878935bea6..37a532f9886 100644 --- a/libcli/security/util_sid.c +++ b/libcli/security/util_sid.c @@ -193,32 +193,42 @@ static const struct security_token system_token = { Lookup string names for SID types. ****************************************************************************/ -static const struct { - enum lsa_SidType sid_type; - const char *string; -} sid_name_type[] = { - {SID_NAME_USE_NONE, "None"}, - {SID_NAME_USER, "User"}, - {SID_NAME_DOM_GRP, "Domain Group"}, - {SID_NAME_DOMAIN, "Domain"}, - {SID_NAME_ALIAS, "Local Group"}, - {SID_NAME_WKN_GRP, "Well-known Group"}, - {SID_NAME_DELETED, "Deleted Account"}, - {SID_NAME_INVALID, "Invalid Account"}, - {SID_NAME_UNKNOWN, "UNKNOWN"}, - {SID_NAME_COMPUTER, "Computer"}, - {SID_NAME_LABEL, "Mandatory Label"} -}; - const char *sid_type_lookup(uint32_t sid_type) { - size_t i; - - /* Look through list */ - for (i=0; i < ARRAY_SIZE(sid_name_type); i++) { - if (sid_name_type[i].sid_type == sid_type) { - return sid_name_type[i].string; - } + switch (sid_type) { + case SID_NAME_USE_NONE: + return "None"; + break; + case SID_NAME_USER: + return "User"; + break; + case SID_NAME_DOM_GRP: + return "Domain Group"; + break; + case SID_NAME_DOMAIN: + return "Domain"; + break; + case SID_NAME_ALIAS: + return "Local Group"; + break; + case SID_NAME_WKN_GRP: + return "Well-known Group"; + break; + case SID_NAME_DELETED: + return "Deleted Account"; + break; + case SID_NAME_INVALID: + return "Invalid Account"; + break; + case SID_NAME_UNKNOWN: + return "UNKNOWN"; + break; + case SID_NAME_COMPUTER: + return "Computer"; + break; + case SID_NAME_LABEL: + return "Mandatory Label"; + break; } /* Default return */ diff --git a/source3/libsmb/clirap.c b/source3/libsmb/clirap.c index 50be489d5a5..25edd217715 100644 --- a/source3/libsmb/clirap.c +++ b/source3/libsmb/clirap.c @@ -1059,13 +1059,11 @@ NTSTATUS cli_qpathinfo2(struct cli_state *cli, const char *fname, off_t *size, uint32_t *pattr, SMB_INO_T *ino) { - TALLOC_CTX *frame = NULL; - struct tevent_context *ev; - struct tevent_req *req; + TALLOC_CTX *frame = talloc_stackframe(); + struct tevent_context *ev = NULL; + struct tevent_req *req = NULL; NTSTATUS status = NT_STATUS_NO_MEMORY; - frame = talloc_stackframe(); - if (smbXcli_conn_has_async_calls(cli->conn)) { /* * Can't use sync call while an async call is in flight diff --git a/source3/passdb/pdb_interface.c b/source3/passdb/pdb_interface.c index 14d7c2aec5f..cee90d9ff79 100644 --- a/source3/passdb/pdb_interface.c +++ b/source3/passdb/pdb_interface.c @@ -1,4 +1,4 @@ -/* +/* Unix SMB/CIFS implementation. Password and authentication handling Copyright (C) Andrew Bartlett 2002 @@ -62,14 +62,14 @@ static bool lookup_global_sam_rid(TALLOC_CTX *mem_ctx, uint32_t rid, enum lsa_SidType *psid_name_use, uid_t *uid, gid_t *gid); -NTSTATUS smb_register_passdb(int version, const char *name, pdb_init_function init) +NTSTATUS smb_register_passdb(int version, const char *name, pdb_init_function init) { struct pdb_init_function_entry *entry = NULL; if(version != PASSDB_INTERFACE_VERSION) { DEBUG(0,("Can't register passdb backend!\n" "You tried to register a passdb module with PASSDB_INTERFACE_VERSION %d, " - "while this version of samba uses version %d\n", + "while this version of samba uses version %d\n", version,PASSDB_INTERFACE_VERSION)); return NT_STATUS_OBJECT_TYPE_MISMATCH; } @@ -159,7 +159,7 @@ NTSTATUS make_pdb_method_name(struct pdb_methods **methods, const char *selected entry = pdb_find_backend_entry(module_name); /* Try to find a module that contains this module */ - if (!entry) { + if (!entry) { DEBUG(2,("No builtin backend found, trying to load plugin\n")); if(NT_STATUS_IS_OK(smb_probe_module("pdb", module_name)) && !(entry = pdb_find_backend_entry(module_name))) { DEBUG(0,("Plugin is available, but doesn't register passdb backend %s\n", module_name)); @@ -169,7 +169,7 @@ NTSTATUS make_pdb_method_name(struct pdb_methods **methods, const char *selected } /* No such backend found */ - if(!entry) { + if(!entry) { DEBUG(0,("No builtin nor plugin backend for %s found\n", module_name)); SAFE_FREE(module_name); return NT_STATUS_INVALID_PARAMETER; @@ -179,7 +179,7 @@ NTSTATUS make_pdb_method_name(struct pdb_methods **methods, const char *selected nt_status = entry->init(methods, module_location); if (!NT_STATUS_IS_OK(nt_status)) { - DEBUG(0,("pdb backend %s did not correctly init (error was %s)\n", + DEBUG(0,("pdb backend %s did not correctly init (error was %s)\n", selected, nt_errstr(nt_status))); SAFE_FREE(module_name); return nt_status; @@ -196,7 +196,7 @@ NTSTATUS make_pdb_method_name(struct pdb_methods **methods, const char *selected Return an already initialized pdb_methods structure *******************************************************************/ -static struct pdb_methods *pdb_get_methods_reload( bool reload ) +static struct pdb_methods *pdb_get_methods_reload( bool reload ) { static struct pdb_methods *pdb = NULL; const char *backend = lp_passdb_backend(); @@ -329,7 +329,7 @@ static bool pdb_try_account_unlock(struct samu *sampass) * * @return True on success, false on error. */ -bool pdb_getsampwnam(struct samu *sam_acct, const char *username) +bool pdb_getsampwnam(struct samu *sam_acct, const char *username) { struct pdb_methods *pdb = pdb_get_methods(); struct samu *for_cache; @@ -378,7 +378,7 @@ static bool guest_user_info( struct samu *user ) pwd = Get_Pwnam_alloc(talloc_tos(), guestname); if (pwd == NULL) { - DEBUG(0,("guest_user_info: Unable to locate guest account [%s]!\n", + DEBUG(0,("guest_user_info: Unable to locate guest account [%s]!\n", guestname)); return False; } @@ -479,7 +479,7 @@ static NTSTATUS pdb_default_create_user(struct pdb_methods *methods, return NT_STATUS_NO_SUCH_USER; } - /* lowercase the username before creating the Unix account for + /* lowercase the username before creating the Unix account for compatibility with previous Samba releases */ fstrcpy( name2, name ); if (!strlower_m( name2 )) { @@ -608,7 +608,7 @@ static NTSTATUS pdb_default_delete_user(struct pdb_methods *methods, * the unix side */ - /* always lower case the username before handing it off to + /* always lower case the username before handing it off to external scripts */ fstrcpy( username, pdb_get_username(sam_acct) ); @@ -666,13 +666,13 @@ NTSTATUS pdb_delete_user(TALLOC_CTX *mem_ctx, struct samu *sam_acct) return status; } -NTSTATUS pdb_add_sam_account(struct samu *sam_acct) +NTSTATUS pdb_add_sam_account(struct samu *sam_acct) { struct pdb_methods *pdb = pdb_get_methods(); return pdb->add_sam_account(pdb, sam_acct); } -NTSTATUS pdb_update_sam_account(struct samu *sam_acct) +NTSTATUS pdb_update_sam_account(struct samu *sam_acct) { struct pdb_methods *pdb = pdb_get_methods(); @@ -681,7 +681,7 @@ NTSTATUS pdb_update_sam_account(struct samu *sam_acct) return pdb->update_sam_account(pdb, sam_acct); } -NTSTATUS pdb_delete_sam_account(struct samu *sam_acct) +NTSTATUS pdb_delete_sam_account(struct samu *sam_acct) { struct pdb_methods *pdb = pdb_get_methods(); const struct dom_sid *user_sid = pdb_get_user_sid(sam_acct); @@ -894,7 +894,7 @@ NTSTATUS pdb_enum_group_members(TALLOC_CTX *mem_ctx, struct pdb_methods *pdb = pdb_get_methods(); NTSTATUS result; - result = pdb->enum_group_members(pdb, mem_ctx, + result = pdb->enum_group_members(pdb, mem_ctx, sid, pp_member_rids, p_num_members); /* special check for rid 513 */ @@ -1029,7 +1029,7 @@ static NTSTATUS pdb_default_add_groupmem(struct pdb_methods *methods, return NT_STATUS_MEMBER_IN_GROUP; } - /* + /* * ok, the group exist, the user exist, the user is not in the group, * we can (finally) add it to the group ! -- Samba Shared Repository