diff options
-rw-r--r-- | source3/lib/netapi/group.c | 2 | ||||
-rw-r--r-- | source3/libsmb/clispnego.c | 4 | ||||
-rw-r--r-- | source3/rpc_server/srv_samr_nt.c | 4 | ||||
-rw-r--r-- | source4/torture/rpc/dssync.c | 2 |
4 files changed, 7 insertions, 5 deletions
diff --git a/source3/lib/netapi/group.c b/source3/lib/netapi/group.c index 8dba4b8838..95c012a7f6 100644 --- a/source3/lib/netapi/group.c +++ b/source3/lib/netapi/group.c @@ -1243,7 +1243,7 @@ WERROR NetGroupEnum_r(struct libnetapi_ctx *ctx, goto done; } - if (r->out.resume_handle) { + if (r->out.resume_handle && info.info3.count > 0) { *r->out.resume_handle = info.info3.entries[info.info3.count-1].idx; } diff --git a/source3/libsmb/clispnego.c b/source3/libsmb/clispnego.c index fd312a4c0a..fb95d71925 100644 --- a/source3/libsmb/clispnego.c +++ b/source3/libsmb/clispnego.c @@ -152,7 +152,7 @@ bool spnego_parse_negTokenInit(DATA_BLOB blob, for (i=0; asn1_tag_remaining(data) > 0 && i < ASN1_MAX_OIDS-1; i++) { const char *oid_str = NULL; asn1_read_OID(data,NULL,&oid_str); - OIDs[i] = oid_str; + OIDs[i] = CONST_DISCARD(char *, oid_str); } OIDs[i] = NULL; asn1_end_tag(data); @@ -257,7 +257,7 @@ bool parse_negTokenTarg(DATA_BLOB blob, char *OIDs[ASN1_MAX_OIDS], DATA_BLOB *se for (i=0; asn1_tag_remaining(data) > 0 && i < ASN1_MAX_OIDS-1; i++) { const char *oid_str = NULL; asn1_read_OID(data,NULL,&oid_str); - OIDs[i] = oid_str; + OIDs[i] = CONST_DISCARD(char *, oid_str); } OIDs[i] = NULL; asn1_end_tag(data); diff --git a/source3/rpc_server/srv_samr_nt.c b/source3/rpc_server/srv_samr_nt.c index 221ad29144..36be832a75 100644 --- a/source3/rpc_server/srv_samr_nt.c +++ b/source3/rpc_server/srv_samr_nt.c @@ -871,7 +871,7 @@ NTSTATUS _samr_QuerySecurity(pipes_struct *p, status = access_check_samr_function(acc_granted, STD_RIGHT_READ_CONTROL_ACCESS, "_samr_QuerySecurity"); - if (NT_STATUS_IS_OK(status)) { + if (!NT_STATUS_IS_OK(status)) { return status; } @@ -4908,6 +4908,8 @@ NTSTATUS _samr_DeleteUser(pipes_struct *p, if (!close_policy_hnd(p, r->in.user_handle)) return NT_STATUS_OBJECT_NAME_INVALID; + ZERO_STRUCTP(r->out.user_handle); + force_flush_samr_cache(disp_info); return NT_STATUS_OK; diff --git a/source4/torture/rpc/dssync.c b/source4/torture/rpc/dssync.c index bee2658816..847b32827b 100644 --- a/source4/torture/rpc/dssync.c +++ b/source4/torture/rpc/dssync.c @@ -825,7 +825,7 @@ static bool test_FetchNT4Data(struct torture_context *tctx, struct drsuapi_DsGetNT4ChangeLog r; union drsuapi_DsGetNT4ChangeLogRequest req; union drsuapi_DsGetNT4ChangeLogInfo info; - int32_t level_out = 0; + uint32_t level_out = 0; struct GUID null_guid; struct dom_sid null_sid; DATA_BLOB cookie; |