From 98b57d5eb61094a9c88e2f7d90d3e21b7e74e9d8 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sat, 8 Sep 2007 16:46:30 +0000 Subject: [PATCH] r25035: Fix some more warnings, use service pointer rather than service number in more places. (This used to be commit df9cebcb97e20564359097148665bd519f31bc6f) --- source4/auth/auth.c | 6 +- source4/auth/auth_util.c | 5 +- source4/auth/gensec/gensec.c | 4 +- source4/auth/gensec/gensec_gssapi.c | 14 +- source4/auth/gensec/gensec_krb5.c | 2 +- source4/auth/gensec/schannel_sign.c | 1 + source4/auth/kerberos/krb5_init_context.c | 6 +- source4/auth/ntlmssp/ntlmssp_client.c | 20 +-- source4/auth/ntlmssp/ntlmssp_server.c | 12 +- source4/client/cifsdd.c | 4 +- source4/cluster/ctdb/ctdb_cluster.c | 4 +- source4/cluster/ctdb/opendb_ctdb.c | 2 +- source4/dsdb/repl/drepl_service.c | 4 +- source4/dsdb/samdb/cracknames.c | 2 +- .../dsdb/samdb/ldb_modules/password_hash.c | 2 +- source4/kdc/hdb-ldb.c | 2 +- source4/lib/appweb/ejs/ejsLib.c | 2 +- source4/lib/charset/iconv.c | 4 +- source4/lib/db_wrap.c | 2 +- source4/lib/dbwrap/dbwrap.c | 4 +- source4/lib/events/events.c | 2 +- source4/lib/ldb/tools/ad2oLschema.c | 2 +- source4/lib/registry/tests/hive.c | 24 +-- source4/lib/registry/tests/registry.c | 51 ++++--- source4/lib/socket/socket.c | 2 +- source4/lib/tls/tlscert.c | 2 +- source4/lib/util/tests/strlist.c | 2 +- source4/libcli/nbt/nbtsocket.c | 2 +- source4/libcli/resolve/nbtlist.c | 2 +- source4/libcli/smb2/request.c | 2 +- source4/libnet/libnet_become_dc.c | 2 +- source4/libnet/libnet_samdump.c | 4 +- source4/librpc/ndr/ndr_compression.c | 1 + source4/nbt_server/packet.c | 2 +- source4/nbt_server/register.c | 4 +- source4/nbt_server/wins/wins_ldb.c | 2 +- source4/nbt_server/wins/winsclient.c | 4 +- source4/nbt_server/wins/winsdb.c | 6 +- source4/nbt_server/wins/winsserver.c | 12 +- source4/ntvfs/common/opendb.c | 2 +- source4/ntvfs/common/opendb_tdb.c | 2 +- source4/ntvfs/posix/pvfs_shortname.c | 4 +- source4/ntvfs/sysdep/inotify.c | 2 +- source4/param/loadparm.c | 137 +++++++++--------- source4/param/param.h | 2 +- source4/param/share_classic.c | 120 +++++++-------- source4/rpc_server/common/server_info.c | 8 +- source4/rpc_server/remote/dcesrv_remote.c | 12 +- source4/script/mkproto.pl | 2 +- source4/scripting/ejs/ejsrpc.c | 2 +- source4/scripting/ejs/smbcalls_config.c | 15 +- source4/selftest/output/plain.pm | 6 +- source4/smb_server/smb2/negprot.c | 2 +- source4/smb_server/smb2/receive.c | 3 +- source4/smb_server/smb2/tcon.c | 3 +- source4/smbd/service_stream.c | 2 +- source4/torture/auth/ntlmssp.c | 4 +- source4/torture/ldap/cldap.c | 4 +- source4/torture/libnet/libnet_BecomeDC.c | 10 +- source4/torture/libnet/libnet_user.c | 2 +- source4/torture/libnet/userinfo.c | 2 +- source4/torture/libnet/userman.c | 4 +- source4/torture/local/dbspeed.c | 3 +- source4/torture/local/event.c | 6 +- source4/torture/local/iconv.c | 10 +- source4/torture/local/irpc.c | 8 +- source4/torture/local/sddl.c | 2 +- source4/torture/local/share.c | 12 +- source4/torture/locktest.c | 2 +- source4/torture/ndr/lsa.c | 2 +- source4/torture/ndr/ndr.c | 2 +- source4/torture/ndr/winreg.c | 8 +- source4/torture/raw/acls.c | 2 +- source4/torture/raw/composite.c | 20 +-- source4/torture/raw/context.c | 12 +- source4/torture/raw/eas.c | 10 +- source4/torture/raw/lock.c | 4 +- source4/torture/raw/lockbench.c | 2 +- source4/torture/raw/mkdir.c | 2 +- source4/torture/raw/mux.c | 2 +- source4/torture/raw/notify.c | 3 +- source4/torture/raw/open.c | 8 +- source4/torture/raw/pingpong.c | 23 ++- source4/torture/raw/qfsinfo.c | 2 +- source4/torture/raw/read.c | 6 +- source4/torture/raw/streams.c | 4 +- source4/torture/raw/unlink.c | 10 +- source4/torture/rpc/autoidl.c | 3 +- source4/torture/rpc/bench.c | 4 +- source4/torture/rpc/countcalls.c | 2 +- source4/torture/rpc/drsuapi.c | 6 +- source4/torture/rpc/dssync.c | 32 ++-- source4/torture/rpc/echo.c | 6 +- source4/torture/rpc/eventlog.c | 2 +- source4/torture/rpc/lsa.c | 10 +- source4/torture/rpc/netlogon.c | 4 +- source4/torture/rpc/samba3rpc.c | 2 +- source4/torture/rpc/samlogon.c | 2 +- source4/torture/rpc/samr.c | 16 +- source4/torture/rpc/samsync.c | 4 +- source4/torture/rpc/schannel.c | 4 +- source4/torture/rpc/session_key.c | 3 +- source4/torture/rpc/svcctl.c | 2 +- source4/torture/rpc/testjoin.c | 6 +- source4/torture/smb2/connect.c | 4 +- source4/torture/smb2/getinfo.c | 2 +- source4/torture/smb2/util.c | 5 +- source4/torture/ui.c | 8 +- source4/torture/unix/whoami.c | 4 +- source4/torture/util_smb.c | 14 +- source4/utils/testparm.c | 43 +++--- source4/web_server/http.c | 4 +- source4/web_server/web_server.c | 2 +- source4/wrepl_server/wrepl_server.c | 14 +- 114 files changed, 483 insertions(+), 470 deletions(-) diff --git a/source4/auth/auth.c b/source4/auth/auth.c index 8cd46cd6fe5..ba1e6fd0e54 100644 --- a/source4/auth/auth.c +++ b/source4/auth/auth.c @@ -419,13 +419,13 @@ NTSTATUS auth_context_create(TALLOC_CTX *mem_ctx, const char **auth_methods = NULL; switch (lp_server_role()) { case ROLE_STANDALONE: - auth_methods = lp_parm_string_list(-1, "auth methods", "standalone", NULL); + auth_methods = lp_parm_string_list(NULL, "auth methods", "standalone", NULL); break; case ROLE_DOMAIN_MEMBER: - auth_methods = lp_parm_string_list(-1, "auth methods", "member server", NULL); + auth_methods = lp_parm_string_list(NULL, "auth methods", "member server", NULL); break; case ROLE_DOMAIN_CONTROLLER: - auth_methods = lp_parm_string_list(-1, "auth methods", "domain controller", NULL); + auth_methods = lp_parm_string_list(NULL, "auth methods", "domain controller", NULL); break; } return auth_context_create_methods(mem_ctx, auth_methods, ev, msg, auth_ctx); diff --git a/source4/auth/auth_util.c b/source4/auth/auth_util.c index 8398bbfaf47..6597c79b848 100644 --- a/source4/auth/auth_util.c +++ b/source4/auth/auth_util.c @@ -623,8 +623,9 @@ static NTSTATUS _auth_system_session_info(TALLOC_CTX *parent_ctx, _PUBLIC_ NTSTATUS auth_system_session_info(TALLOC_CTX *parent_ctx, struct auth_session_info **_session_info) { - return _auth_system_session_info(parent_ctx, lp_parm_bool(-1,"system","anonymous", False), - _session_info); + return _auth_system_session_info(parent_ctx, + lp_parm_bool(NULL, "system", "anonymous", false), + _session_info); } /* diff --git a/source4/auth/gensec/gensec.c b/source4/auth/gensec/gensec.c index a974cd51381..052eed1363d 100644 --- a/source4/auth/gensec/gensec.c +++ b/source4/auth/gensec/gensec.c @@ -1105,7 +1105,7 @@ _PUBLIC_ NTSTATUS gensec_set_target_hostname(struct gensec_security *gensec_secu _PUBLIC_ const char *gensec_get_target_hostname(struct gensec_security *gensec_security) { /* We allow the target hostname to be overriden for testing purposes */ - const char *target_hostname = lp_parm_string(-1, "gensec", "target_hostname"); + const char *target_hostname = lp_parm_string(NULL, "gensec", "target_hostname"); if (target_hostname) { return target_hostname; } @@ -1203,7 +1203,7 @@ const char *gensec_get_target_principal(struct gensec_security *gensec_security) */ NTSTATUS gensec_register(const struct gensec_security_ops *ops) { - if (!lp_parm_bool(-1, "gensec", ops->name, ops->enabled)) { + if (!lp_parm_bool(NULL, "gensec", ops->name, ops->enabled)) { DEBUG(2,("gensec subsystem %s is disabled\n", ops->name)); return NT_STATUS_OK; } diff --git a/source4/auth/gensec/gensec_gssapi.c b/source4/auth/gensec/gensec_gssapi.c index a3351f75a84..8a7e8090ebb 100644 --- a/source4/auth/gensec/gensec_gssapi.c +++ b/source4/auth/gensec/gensec_gssapi.c @@ -155,7 +155,7 @@ static NTSTATUS gensec_gssapi_start(struct gensec_security *gensec_security) gensec_gssapi_state->gss_exchange_count = 0; gensec_gssapi_state->max_wrap_buf_size - = lp_parm_int(-1, "gensec_gssapi", "max wrap buf size", 65536); + = lp_parm_int(NULL, "gensec_gssapi", "max wrap buf size", 65536); gensec_gssapi_state->sasl = False; gensec_gssapi_state->sasl_state = STAGE_GSS_NEG; @@ -170,16 +170,16 @@ static NTSTATUS gensec_gssapi_start(struct gensec_security *gensec_security) gensec_gssapi_state->input_chan_bindings = GSS_C_NO_CHANNEL_BINDINGS; gensec_gssapi_state->want_flags = 0; - if (lp_parm_bool(-1, "gensec_gssapi", "mutual", True)) { + if (lp_parm_bool(NULL, "gensec_gssapi", "mutual", true)) { gensec_gssapi_state->want_flags |= GSS_C_MUTUAL_FLAG; } - if (lp_parm_bool(-1, "gensec_gssapi", "delegation", True)) { + if (lp_parm_bool(NULL, "gensec_gssapi", "delegation", true)) { gensec_gssapi_state->want_flags |= GSS_C_DELEG_FLAG; } - if (lp_parm_bool(-1, "gensec_gssapi", "replay", True)) { + if (lp_parm_bool(NULL, "gensec_gssapi", "replay", true)) { gensec_gssapi_state->want_flags |= GSS_C_REPLAY_FLAG; } - if (lp_parm_bool(-1, "gensec_gssapi", "sequence", True)) { + if (lp_parm_bool(NULL, "gensec_gssapi", "sequence", true)) { gensec_gssapi_state->want_flags |= GSS_C_SEQUENCE_FLAG; } @@ -230,7 +230,7 @@ static NTSTATUS gensec_gssapi_start(struct gensec_security *gensec_security) } /* don't do DNS lookups of any kind, it might/will fail for a netbios name */ - ret = gsskrb5_set_dns_canonicalize(lp_parm_bool(-1, "krb5", "set_dns_canonicalize", false)); + ret = gsskrb5_set_dns_canonicalize(lp_parm_bool(NULL, "krb5", "set_dns_canonicalize", false)); if (ret) { DEBUG(1,("gensec_krb5_start: gsskrb5_set_dns_canonicalize failed\n")); talloc_free(gensec_gssapi_state); @@ -1317,7 +1317,7 @@ static NTSTATUS gensec_gssapi_session_info(struct gensec_security *gensec_securi talloc_free(mem_ctx); return nt_status; } - } else if (!lp_parm_bool(-1, "gensec", "require_pac", False)) { + } else if (!lp_parm_bool(NULL, "gensec", "require_pac", false)) { DEBUG(1, ("Unable to find PAC, resorting to local user lookup: %s\n", gssapi_error_string(mem_ctx, maj_stat, min_stat, gensec_gssapi_state->gss_oid))); nt_status = sam_get_server_info_principal(mem_ctx, principal_string, diff --git a/source4/auth/gensec/gensec_krb5.c b/source4/auth/gensec/gensec_krb5.c index 973de0c10be..c0348441edf 100644 --- a/source4/auth/gensec/gensec_krb5.c +++ b/source4/auth/gensec/gensec_krb5.c @@ -582,7 +582,7 @@ static NTSTATUS gensec_krb5_session_info(struct gensec_security *gensec_security KRB5_AUTHDATA_WIN2K_PAC, &pac_data); - if (ret && lp_parm_bool(-1, "gensec", "require_pac", False)) { + if (ret && lp_parm_bool(NULL, "gensec", "require_pac", false)) { DEBUG(1, ("Unable to find PAC in ticket from %s, failing to allow access: %s \n", principal_string, smb_get_krb5_error_message(context, diff --git a/source4/auth/gensec/schannel_sign.c b/source4/auth/gensec/schannel_sign.c index 43de328c9e4..1e57beba089 100644 --- a/source4/auth/gensec/schannel_sign.c +++ b/source4/auth/gensec/schannel_sign.c @@ -26,6 +26,7 @@ #include "auth/gensec/schannel.h" #include "auth/credentials/credentials.h" #include "auth/gensec/gensec.h" +#include "auth/gensec/schannel_proto.h" #define NETSEC_SIGN_SIGNATURE { 0x77, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00 } #define NETSEC_SEAL_SIGNATURE { 0x77, 0x00, 0x7a, 0x00, 0xff, 0xff, 0x00, 0x00 } diff --git a/source4/auth/kerberos/krb5_init_context.c b/source4/auth/kerberos/krb5_init_context.c index 000e715305a..06a80e44e48 100644 --- a/source4/auth/kerberos/krb5_init_context.c +++ b/source4/auth/kerberos/krb5_init_context.c @@ -250,12 +250,12 @@ krb5_error_code smb_krb5_send_and_recv_func(krb5_context context, status = NT_STATUS_INVALID_PARAMETER; switch (hi->proto) { case KRB5_KRBHST_UDP: - if (lp_parm_bool(-1, "krb5", "udp", True)) { + if (lp_parm_bool(NULL, "krb5", "udp", true)) { status = socket_create(name, SOCKET_TYPE_DGRAM, &smb_krb5->sock, 0); } break; case KRB5_KRBHST_TCP: - if (lp_parm_bool(-1, "krb5", "tcp", True)) { + if (lp_parm_bool(NULL, "krb5", "tcp", true)) { status = socket_create(name, SOCKET_TYPE_STREAM, &smb_krb5->sock, 0); } break; @@ -473,7 +473,7 @@ krb5_error_code smb_krb5_init_context(void *parent_ctx, /* Set options in kerberos */ krb5_set_dns_canonicalize_hostname((*smb_krb5_context)->krb5_context, - lp_parm_bool(-1, "krb5", "set_dns_canonicalize", false)); + lp_parm_bool(NULL, "krb5", "set_dns_canonicalize", false)); return 0; } diff --git a/source4/auth/ntlmssp/ntlmssp_client.c b/source4/auth/ntlmssp/ntlmssp_client.c index a98918a54b7..d2f28a394c8 100644 --- a/source4/auth/ntlmssp/ntlmssp_client.c +++ b/source4/auth/ntlmssp/ntlmssp_client.c @@ -299,13 +299,13 @@ NTSTATUS gensec_ntlmssp_client_start(struct gensec_security *gensec_security) gensec_ntlmssp_state->get_domain = lp_workgroup; - gensec_ntlmssp_state->unicode = lp_parm_bool(-1, "ntlmssp_client", "unicode", True); + gensec_ntlmssp_state->unicode = lp_parm_bool(NULL, "ntlmssp_client", "unicode", true); - gensec_ntlmssp_state->use_nt_response = lp_parm_bool(-1, "ntlmssp_client", "send_nt_reponse", True); + gensec_ntlmssp_state->use_nt_response = lp_parm_bool(NULL, "ntlmssp_client", "send_nt_reponse", true); gensec_ntlmssp_state->allow_lm_key = (lp_client_lanman_auth() - && (lp_parm_bool(-1, "ntlmssp_client", "allow_lm_key", False) - || lp_parm_bool(-1, "ntlmssp_client", "lm_key", False))); + && (lp_parm_bool(NULL, "ntlmssp_client", "allow_lm_key", false) + || lp_parm_bool(NULL, "ntlmssp_client", "lm_key", false))); gensec_ntlmssp_state->use_ntlmv2 = lp_client_ntlmv2_auth(); @@ -315,27 +315,27 @@ NTSTATUS gensec_ntlmssp_client_start(struct gensec_security *gensec_security) NTLMSSP_NEGOTIATE_NTLM | NTLMSSP_REQUEST_TARGET; - if (lp_parm_bool(-1, "ntlmssp_client", "128bit", True)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "128bit", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_128; } - if (lp_parm_bool(-1, "ntlmssp_client", "56bit", False)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "56bit", false)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_56; } - if (lp_parm_bool(-1, "ntlmssp_client", "lm_key", False)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "lm_key", false)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_LM_KEY; } - if (lp_parm_bool(-1, "ntlmssp_client", "keyexchange", True)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "keyexchange", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_KEY_EXCH; } - if (lp_parm_bool(-1, "ntlmssp_client", "alwayssign", True)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "alwayssign", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_ALWAYS_SIGN; } - if (lp_parm_bool(-1, "ntlmssp_client", "ntlm2", True)) { + if (lp_parm_bool(NULL, "ntlmssp_client", "ntlm2", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_NTLM2; } else { /* apparently we can't do ntlmv2 if we don't do ntlm2 */ diff --git a/source4/auth/ntlmssp/ntlmssp_server.c b/source4/auth/ntlmssp/ntlmssp_server.c index 8b6920c9781..954c9ea2ac8 100644 --- a/source4/auth/ntlmssp/ntlmssp_server.c +++ b/source4/auth/ntlmssp/ntlmssp_server.c @@ -751,7 +751,7 @@ NTSTATUS gensec_ntlmssp_server_start(struct gensec_security *gensec_security) gensec_ntlmssp_state->expected_state = NTLMSSP_NEGOTIATE; gensec_ntlmssp_state->allow_lm_key = (lp_lanman_auth() - && lp_parm_bool(-1, "ntlmssp_server", "allow_lm_key", False)); + && lp_parm_bool(NULL, "ntlmssp_server", "allow_lm_key", false)); gensec_ntlmssp_state->server_multiple_authentications = False; @@ -762,23 +762,23 @@ NTSTATUS gensec_ntlmssp_server_start(struct gensec_security *gensec_security) gensec_ntlmssp_state->nt_resp = data_blob(NULL, 0); gensec_ntlmssp_state->encrypted_session_key = data_blob(NULL, 0); - if (lp_parm_bool(-1, "ntlmssp_server", "128bit", True)) { + if (lp_parm_bool(NULL, "ntlmssp_server", "128bit", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_128; } - if (lp_parm_bool(-1, "ntlmssp_server", "56bit", True)) { + if (lp_parm_bool(NULL, "ntlmssp_server", "56bit", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_56; } - if (lp_parm_bool(-1, "ntlmssp_server", "keyexchange", True)) { + if (lp_parm_bool(NULL, "ntlmssp_server", "keyexchange", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_KEY_EXCH; } - if (lp_parm_bool(-1, "ntlmssp_server", "alwayssign", True)) { + if (lp_parm_bool(NULL, "ntlmssp_server", "alwayssign", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_ALWAYS_SIGN; } - if (lp_parm_bool(-1, "ntlmssp_server", "ntlm2", True)) { + if (lp_parm_bool(NULL, "ntlmssp_server", "ntlm2", true)) { gensec_ntlmssp_state->neg_flags |= NTLMSSP_NEGOTIATE_NTLM2; } diff --git a/source4/client/cifsdd.c b/source4/client/cifsdd.c index 2663184c837..8ecb0a628c8 100644 --- a/source4/client/cifsdd.c +++ b/source4/client/cifsdd.c @@ -103,7 +103,7 @@ static struct argdef args[] = */ }; -struct argdef * find_named_arg(const char * arg) +static struct argdef * find_named_arg(const char * arg) { int i; @@ -419,7 +419,7 @@ static int copy_files(void) * could accumulate a remainder if ibs and obs don't match. */ iomax = 2 * MAX(ibs, obs); - if ((iobuf = malloc(iomax)) == NULL) { + if ((iobuf = malloc_array_p(uint8_t, iomax)) == NULL) { fprintf(stderr, "%s: failed to allocate IO buffer of %llu bytes\n", PROGNAME, (unsigned long long)iomax); diff --git a/source4/cluster/ctdb/ctdb_cluster.c b/source4/cluster/ctdb/ctdb_cluster.c index 693de9fef38..ad35a5effea 100644 --- a/source4/cluster/ctdb/ctdb_cluster.c +++ b/source4/cluster/ctdb/ctdb_cluster.c @@ -81,7 +81,7 @@ static struct tdb_wrap *ctdb_tdb_tmp_open(struct cluster_ops *ops, TALLOC_CTX *mem_ctx, const char *dbname, int flags) { - const char *dir = lp_parm_string(-1, "ctdb", "shared data"); + const char *dir = lp_parm_string(NULL, "ctdb", "shared data"); char *path; struct tdb_wrap *w; if (dir == NULL) { @@ -201,7 +201,7 @@ void cluster_ctdb_init(struct event_context *ev, const char *model) struct cluster_state *state; int ret; - if (!lp_parm_bool(-1, "ctdb", "enable", False)) { + if (!lp_parm_bool(NULL, "ctdb", "enable", false)) { return; } diff --git a/source4/cluster/ctdb/opendb_ctdb.c b/source4/cluster/ctdb/opendb_ctdb.c index 738d8a1f0f7..a01478f784a 100644 --- a/source4/cluster/ctdb/opendb_ctdb.c +++ b/source4/cluster/ctdb/opendb_ctdb.c @@ -97,7 +97,7 @@ static struct odb_context *odb_ctdb_init(TALLOC_CTX *mem_ctx, odb->ntvfs_ctx = ntvfs_ctx; /* leave oplocks disabled by default until the code is working */ - odb->oplocks = lp_parm_bool(-1, "opendb", "oplocks", False); + odb->oplocks = lp_parm_bool(NULL, "opendb", "oplocks", false); return odb; } diff --git a/source4/dsdb/repl/drepl_service.c b/source4/dsdb/repl/drepl_service.c index e4e2aedcf73..2896050ddc7 100644 --- a/source4/dsdb/repl/drepl_service.c +++ b/source4/dsdb/repl/drepl_service.c @@ -165,8 +165,8 @@ static void dreplsrv_task_init(struct task_server *task) return; } - periodic_startup_interval = lp_parm_int(-1, "dreplsrv", "periodic_startup_interval", 15); /* in seconds */ - service->periodic.interval = lp_parm_int(-1, "dreplsrv", "periodic_interval", 300); /* in seconds */ + periodic_startup_interval = lp_parm_int(NULL, "dreplsrv", "periodic_startup_interval", 15); /* in seconds */ + service->periodic.interval = lp_parm_int(NULL, "dreplsrv", "periodic_interval", 300); /* in seconds */ status = dreplsrv_periodic_schedule(service, periodic_startup_interval); if (!W_ERROR_IS_OK(status)) { diff --git a/source4/dsdb/samdb/cracknames.c b/source4/dsdb/samdb/cracknames.c index aa5d221fd8d..3754be2e960 100644 --- a/source4/dsdb/samdb/cracknames.c +++ b/source4/dsdb/samdb/cracknames.c @@ -348,7 +348,7 @@ WERROR DsCrackNameOneName(struct ldb_context *sam_ctx, TALLOC_CTX *mem_ctx, struct smb_krb5_context *smb_krb5_context; ret = smb_krb5_init_context(mem_ctx, - ldb_get_opaque(sam_ctx, "EventContext"), + (struct event_context *)ldb_get_opaque(sam_ctx, "EventContext"), &smb_krb5_context); if (ret) { diff --git a/source4/dsdb/samdb/ldb_modules/password_hash.c b/source4/dsdb/samdb/ldb_modules/password_hash.c index 22d04a5519a..5f4317a646c 100644 --- a/source4/dsdb/samdb/ldb_modules/password_hash.c +++ b/source4/dsdb/samdb/ldb_modules/password_hash.c @@ -341,7 +341,7 @@ static int setup_primary_kerberos(struct setup_password_fields_io *io, return LDB_ERR_OPERATIONS_ERROR; } - if (lp_parm_bool(-1, "password_hash", "create_aes_key", false)) { + if (lp_parm_bool(NULL, "password_hash", "create_aes_key", false)) { /* * TODO: * diff --git a/source4/kdc/hdb-ldb.c b/source4/kdc/hdb-ldb.c index 93f45b8cf7f..ed11354498f 100644 --- a/source4/kdc/hdb-ldb.c +++ b/source4/kdc/hdb-ldb.c @@ -481,7 +481,7 @@ static krb5_error_code LDB_message2entry(krb5_context context, HDB *db, entry_ex->entry.flags.ok_as_delegate = 1; } - if (lp_parm_bool(-1, "kdc", "require spn for service", True)) { + if (lp_parm_bool(NULL, "kdc", "require spn for service", true)) { if (!is_computer && !ldb_msg_find_attr_as_string(msg, "servicePrincipalName", NULL)) { entry_ex->entry.flags.server = 0; } diff --git a/source4/lib/appweb/ejs/ejsLib.c b/source4/lib/appweb/ejs/ejsLib.c index 0dfc2e0ed2d..67d0a4e7601 100644 --- a/source4/lib/appweb/ejs/ejsLib.c +++ b/source4/lib/appweb/ejs/ejsLib.c @@ -154,7 +154,7 @@ EjsId ejsOpenEngine(EjsHandle primaryHandle, EjsHandle altHandle) MprVar *np; Ejs *ep; - ep = mprMalloc(sizeof(Ejs)); + ep = (Ejs *)mprMalloc(sizeof(Ejs)); if (ep == 0) { return (EjsId) -1; } diff --git a/source4/lib/charset/iconv.c b/source4/lib/charset/iconv.c index 8510f70d969..1c571f89618 100644 --- a/source4/lib/charset/iconv.c +++ b/source4/lib/charset/iconv.c @@ -75,7 +75,7 @@ static struct charset_functions *charsets = NULL; bool charset_register_backend(const void *_funcs) { - struct charset_functions *funcs = memdup(_funcs,sizeof(struct charset_functions)); + struct charset_functions *funcs = (struct charset_functions *)memdup(_funcs,sizeof(struct charset_functions)); struct charset_functions *c; /* Check whether we already have this charset... */ @@ -199,7 +199,7 @@ smb_iconv_t smb_iconv_open(const char *tocode, const char *fromcode) } #ifdef HAVE_NATIVE_ICONV - if ((!from || !to) && !lp_parm_bool(-1, "iconv", "native", true)) { + if ((!from || !to) && !lp_parm_bool(NULL, "iconv", "native", true)) { goto failed; } if (!from) { diff --git a/source4/lib/db_wrap.c b/source4/lib/db_wrap.c index f91006b46c0..3a8d0482216 100644 --- a/source4/lib/db_wrap.c +++ b/source4/lib/db_wrap.c @@ -161,7 +161,7 @@ struct ldb_context *ldb_wrap_connect(TALLOC_CTX *mem_ctx, } /* allow admins to force non-sync ldb for all databases */ - if (lp_parm_bool(-1, "ldb", "nosync", False)) { + if (lp_parm_bool(NULL, "ldb", "nosync", false)) { flags |= LDB_FLG_NOSYNC; } diff --git a/source4/lib/dbwrap/dbwrap.c b/source4/lib/dbwrap/dbwrap.c index 02e82c77a70..057a6f00572 100644 --- a/source4/lib/dbwrap/dbwrap.c +++ b/source4/lib/dbwrap/dbwrap.c @@ -30,8 +30,8 @@ */ struct db_context *db_tmp_open(TALLOC_CTX *mem_ctx, const char *name, int tdb_flags) { - if (lp_parm_bool(-1, "ctdb", "enable", False) && - lp_parm_bool(-1, "ctdb", name, True)) { + if (lp_parm_bool(NULL, "ctdb", "enable", false) && + lp_parm_bool(NULL, "ctdb", name, true)) { return db_tmp_open_ctdb(mem_ctx, name, tdb_flags); } diff --git a/source4/lib/events/events.c b/source4/lib/events/events.c index 77225b9ddf3..da3cc3bfe02 100644 --- a/source4/lib/events/events.c +++ b/source4/lib/events/events.c @@ -185,7 +185,7 @@ struct event_context *event_context_init_byname(TALLOC_CTX *mem_ctx, const char #if _SAMBA_BUILD_ if (name == NULL) { - name = lp_parm_string(-1, "event", "backend"); + name = lp_parm_string(NULL, "event", "backend"); } #endif if (name == NULL) { diff --git a/source4/lib/ldb/tools/ad2oLschema.c b/source4/lib/ldb/tools/ad2oLschema.c index ec72d011210..64df4cfecb8 100644 --- a/source4/lib/ldb/tools/ad2oLschema.c +++ b/source4/lib/ldb/tools/ad2oLschema.c @@ -677,7 +677,7 @@ static struct schema_conv process_convert(struct ldb_context *ldb, enum convert_ } } - target_str = lp_parm_string(-1, "convert", "target"); + target_str = lp_parm_string(NULL, "convert", "target"); if (!target_str || strcasecmp(target_str, "openldap") == 0) { target = TARGET_OPENLDAP; diff --git a/source4/lib/registry/tests/hive.c b/source4/lib/registry/tests/hive.c index a04bc1168e2..a71e31474c6 100644 --- a/source4/lib/registry/tests/hive.c +++ b/source4/lib/registry/tests/hive.c @@ -31,9 +31,9 @@ NTSTATUS torture_temp_dir(struct torture_context *tctx, const char *prefix, const char **tempdir); static bool test_del_nonexistant_key(struct torture_context *tctx, - const void *test_data) + const void *test_data) { - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; WERROR error = hive_key_del(root, "bla"); torture_assert_werr_equal(tctx, error, WERR_NOT_FOUND, "invalid return code"); @@ -45,7 +45,7 @@ static bool test_keyinfo_root(struct torture_context *tctx, const void *test_data) { uint32_t num_subkeys, num_values; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; WERROR error; /* This is a new backend. There should be no subkeys and no @@ -67,7 +67,7 @@ static bool test_keyinfo_nums(struct torture_context *tctx, const void *test_data) { uint32_t num_subkeys, num_values; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; WERROR error; struct hive_key *subkey; uint32_t data = 42; @@ -100,7 +100,7 @@ static bool test_add_subkey(struct torture_context *tctx, { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; error = hive_key_add_name(mem_ctx, root, "Nested Key", NULL, @@ -114,9 +114,9 @@ static bool test_add_subkey(struct torture_context *tctx, } static bool test_flush_key(struct torture_context *tctx, - const void *test_data) + const void *test_data) { - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; torture_assert_werr_ok(tctx, hive_key_flush(root), "flush key"); @@ -127,7 +127,7 @@ static bool test_del_key(struct torture_context *tctx, const void *test_data) { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; error = hive_key_add_name(mem_ctx, root, "Nested Key", NULL, @@ -148,7 +148,7 @@ static bool test_set_value(struct torture_context *tctx, { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; uint32_t data = 42; @@ -167,7 +167,7 @@ static bool test_get_value(struct torture_context *tctx, const void *test_data) { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; uint32_t data = 42; uint32_t type; @@ -200,7 +200,7 @@ static bool test_del_value(struct torture_context *tctx, const void *test_data) { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; uint32_t data = 42; uint32_t type; @@ -231,7 +231,7 @@ static bool test_list_values(struct torture_context *tctx, { WERROR error; struct hive_key *subkey; - const struct hive_key *root = test_data; + const struct hive_key *root = (const struct hive_key *)test_data; TALLOC_CTX *mem_ctx = tctx; uint32_t data = 42; uint32_t type; diff --git a/source4/lib/registry/tests/registry.c b/source4/lib/registry/tests/registry.c index 9ac61b1bc0c..9809a6d4c8d 100644 --- a/source4/lib/registry/tests/registry.c +++ b/source4/lib/registry/tests/registry.c @@ -37,7 +37,8 @@ NTSTATUS torture_temp_dir(struct torture_context *tctx, const char *prefix, static bool test_get_predefined(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root; WERROR error; @@ -66,7 +67,8 @@ static bool test_get_predefined_unknown(struct torture_context *tctx, static bool test_predef_key_by_name(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root; WERROR error; @@ -84,7 +86,8 @@ static bool test_predef_key_by_name(struct torture_context *tctx, static bool test_predef_key_by_name_invalid(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root; WERROR error; @@ -100,7 +103,8 @@ static bool test_predef_key_by_name_invalid(struct torture_context *tctx, static bool test_create_subkey(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *newkey; WERROR error; @@ -121,7 +125,8 @@ static bool test_create_subkey(struct torture_context *tctx, static bool test_create_nested_subkey(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *newkey1, *newkey2; WERROR error; @@ -148,7 +153,8 @@ static bool test_create_nested_subkey(struct torture_context *tctx, static bool test_key_add_abs_top(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root; WERROR error; @@ -165,7 +171,8 @@ static bool test_key_add_abs(struct torture_context *tctx, const void *_data) { WERROR error; - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *result1, *result2; error = reg_key_add_abs(tctx, rctx, "HKEY_CLASSES_ROOT\\bloe", 0, NULL, &result1); @@ -190,7 +197,8 @@ static bool test_key_add_abs(struct torture_context *tctx, static bool test_del_key(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *newkey; WERROR error; @@ -238,7 +246,8 @@ static bool create_test_key(struct torture_context *tctx, static bool test_flush_key(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *subkey; WERROR error; @@ -256,7 +265,8 @@ static bool test_flush_key(struct torture_context *tctx, const void *_data) static bool test_query_key(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *subkey; WERROR error; NTTIME last_changed_time; @@ -280,7 +290,8 @@ static bool test_query_key(struct torture_context *tctx, const void *_data) static bool test_query_key_nums(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *root, *subkey1, *subkey2; WERROR error; uint32_t num_subkeys, num_values; @@ -313,7 +324,8 @@ static bool test_query_key_nums(struct torture_context *tctx, const void *_data) */ static bool test_list_subkeys(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; NTTIME last_mod_time; @@ -351,7 +363,8 @@ static bool test_list_subkeys(struct torture_context *tctx, const void *_data) */ static bool test_set_value(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; uint32_t data = 42; @@ -371,7 +384,8 @@ static bool test_set_value(struct torture_context *tctx, const void *_data) */ static bool test_security(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; struct security_descriptor *osd, *nsd; @@ -404,7 +418,8 @@ static bool test_security(struct torture_context *tctx, const void *_data) */ static bool test_get_value(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; DATA_BLOB data; @@ -439,7 +454,8 @@ static bool test_get_value(struct torture_context *tctx, const void *_data) */ static bool test_del_value(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; DATA_BLOB data; @@ -473,7 +489,8 @@ static bool test_del_value(struct torture_context *tctx, const void *_data) */ static bool test_list_values(struct torture_context *tctx, const void *_data) { - const struct registry_context *rctx = _data; + const struct registry_context *rctx = + (const struct registry_context *)_data; struct registry_key *subkey = NULL, *root; WERROR error; DATA_BLOB data; diff --git a/source4/lib/socket/socket.c b/source4/lib/socket/socket.c index 184c89f3edf..55a1b6394b2 100644 --- a/source4/lib/socket/socket.c +++ b/source4/lib/socket/socket.c @@ -70,7 +70,7 @@ _PUBLIC_ NTSTATUS socket_create_with_ops(TALLOC_CTX *mem_ctx, const struct socke if (!(flags & SOCKET_FLAG_BLOCK) && type == SOCKET_TYPE_STREAM && - lp_parm_bool(-1, "socket", "testnonblock", False)) { + lp_parm_bool(NULL, "socket", "testnonblock", false)) { (*new_sock)->flags |= SOCKET_FLAG_TESTNONBLOCK; } diff --git a/source4/lib/tls/tlscert.c b/source4/lib/tls/tlscert.c index ad65df0e6c0..240ae056c13 100644 --- a/source4/lib/tls/tlscert.c +++ b/source4/lib/tls/tlscert.c @@ -153,5 +153,5 @@ failed: } #else - void tls_cert_dummy(void) {} +void tls_cert_dummy(void) {} #endif diff --git a/source4/lib/util/tests/strlist.c b/source4/lib/util/tests/strlist.c index 41accd4bd2a..437d9d741a8 100644 --- a/source4/lib/util/tests/strlist.c +++ b/source4/lib/util/tests/strlist.c @@ -35,7 +35,7 @@ static const char *test_lists_shell_strings[] = { static bool test_lists_shell(struct torture_context *tctx, const void *test_data) { - const char *data = test_data; + const char *data = (const char *)test_data; const char **ret1, **ret2, *tmp; bool match = true; TALLOC_CTX *mem_ctx = tctx; diff --git a/source4/libcli/nbt/nbtsocket.c b/source4/libcli/nbt/nbtsocket.c index b44b50efd8c..453f0afcff8 100644 --- a/source4/libcli/nbt/nbtsocket.c +++ b/source4/libcli/nbt/nbtsocket.c @@ -244,7 +244,7 @@ static void nbt_name_socket_recv(struct nbt_name_socket *nbtsock) req->received_wack = True; /* although there can be a timeout in the packet, w2k3 screws it up, so better to set it ourselves */ - req->timeout = lp_parm_int(-1, "nbt", "wack_timeout", 30); + req->timeout = lp_parm_int(NULL, "nbt", "wack_timeout", 30); req->te = event_add_timed(req->nbtsock->event_ctx, req, timeval_current_ofs(req->timeout, 0), nbt_name_socket_timeout, req); diff --git a/source4/libcli/resolve/nbtlist.c b/source4/libcli/resolve/nbtlist.c index faa2962d5ad..be4d01b79a4 100644 --- a/source4/libcli/resolve/nbtlist.c +++ b/source4/libcli/resolve/nbtlist.c @@ -155,7 +155,7 @@ struct composite_context *resolve_name_nbtlist_send(TALLOC_CTX *mem_ctx, state->io_queries[i].in.broadcast = broadcast; state->io_queries[i].in.wins_lookup = wins_lookup; - state->io_queries[i].in.timeout = lp_parm_int(-1, "nbt", "timeout", 1); + state->io_queries[i].in.timeout = lp_parm_int(NULL, "nbt", "timeout", 1); state->io_queries[i].in.retries = 2; state->queries[i] = nbt_name_query_send(state->nbtsock, &state->io_queries[i]); diff --git a/source4/libcli/smb2/request.c b/source4/libcli/smb2/request.c index cca4f861de9..2d2c8252a1f 100644 --- a/source4/libcli/smb2/request.c +++ b/source4/libcli/smb2/request.c @@ -582,7 +582,7 @@ NTSTATUS smb2_pull_o16s16_string(struct smb2_request_buffer *buf, TALLOC_CTX *me size = convert_string_talloc(mem_ctx, CH_UTF16, CH_UNIX, blob.data, blob.length, &vstr); data_blob_free(&blob); - (*str) = vstr; + (*str) = (char *)vstr; if (size == -1) { return NT_STATUS_ILLEGAL_CHARACTER; } diff --git a/source4/libnet/libnet_become_dc.c b/source4/libnet/libnet_become_dc.c index 47a250a5f2b..13d20202e12 100644 --- a/source4/libnet/libnet_become_dc.c +++ b/source4/libnet/libnet_become_dc.c @@ -1511,7 +1511,7 @@ static void becomeDC_drsuapi_connect_send(struct libnet_BecomeDC_state *s, drsuapi->s = s; if (!drsuapi->binding) { - if (lp_parm_bool(-1, "become_dc", "print", False)) { + if (lp_parm_bool(NULL, "become_dc", "print", false)) { binding_str = talloc_asprintf(s, "ncacn_ip_tcp:%s[krb5,print,seal]", s->source_dsa.dns_name); if (composite_nomem(binding_str, c)) return; } else { diff --git a/source4/libnet/libnet_samdump.c b/source4/libnet/libnet_samdump.c index fc671a9b486..bde5a29cb95 100644 --- a/source4/libnet/libnet_samdump.c +++ b/source4/libnet/libnet_samdump.c @@ -110,7 +110,7 @@ static NTSTATUS libnet_samdump_fn(TALLOC_CTX *mem_ctx, char **error_string) { NTSTATUS nt_status = NT_STATUS_OK; - struct samdump_state *samdump_state = private; + struct samdump_state *samdump_state = (struct samdump_state *)private; *error_string = NULL; switch (delta->delta_type) { @@ -163,7 +163,7 @@ NTSTATUS libnet_SamDump(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, r2.out.error_string = NULL; r2.in.binding_string = r->in.binding_string; - r2.in.rid_crypt = lp_parm_bool(-1, "vampire", "rid decrypt", True); + r2.in.rid_crypt = lp_parm_bool(NULL, "vampire", "rid decrypt", true); r2.in.init_fn = NULL; r2.in.delta_fn = libnet_samdump_fn; r2.in.fn_ctx = samdump_state; diff --git a/source4/librpc/ndr/ndr_compression.c b/source4/librpc/ndr/ndr_compression.c index 6b3b44109b3..1d8cfec6496 100644 --- a/source4/librpc/ndr/ndr_compression.c +++ b/source4/librpc/ndr/ndr_compression.c @@ -22,6 +22,7 @@ #include "includes.h" #include "lib/compression/mszip.h" #include "librpc/ndr/libndr.h" +#include "librpc/ndr/ndr_compression.h" static NTSTATUS ndr_pull_compression_mszip_chunk(struct ndr_pull *ndrpull, struct ndr_push *ndrpush, diff --git a/source4/nbt_server/packet.c b/source4/nbt_server/packet.c index f53d355daf5..747b41076cf 100644 --- a/source4/nbt_server/packet.c +++ b/source4/nbt_server/packet.c @@ -327,7 +327,7 @@ void nbtd_wack_reply(struct nbt_name_socket *nbtsock, packet->answers[0].rr_class = NBT_QCLASS_IP; packet->answers[0].ttl = ttl; packet->answers[0].rdata.data.length = 2; - packet->answers[0].rdata.data.data = talloc_size(packet, 2); + packet->answers[0].rdata.data.data = talloc_array(packet, uint8_t, 2); if (packet->answers[0].rdata.data.data == NULL) goto failed; RSSVAL(packet->answers[0].rdata.data.data, 0, request_packet->operation); diff --git a/source4/nbt_server/register.c b/source4/nbt_server/register.c index 3b81d65bd2f..d22903d5199 100644 --- a/source4/nbt_server/register.c +++ b/source4/nbt_server/register.c @@ -118,7 +118,7 @@ static void name_refresh_handler(struct event_context *ev, struct timed_event *t static void nbtd_start_refresh_timer(struct nbtd_iface_name *iname) { uint32_t refresh_time; - uint32_t max_refresh_time = lp_parm_int(-1, "nbtd", "max_refresh_time", 7200); + uint32_t max_refresh_time = lp_parm_int(NULL, "nbtd", "max_refresh_time", 7200); refresh_time = MIN(max_refresh_time, iname->ttl/2); @@ -188,7 +188,7 @@ static void nbtd_register_name_iface(struct nbtd_interface *iface, iname->name.scope = NULL; } iname->nb_flags = nb_flags; - iname->ttl = lp_parm_int(-1, "nbtd", "bcast_ttl", 300000); + iname->ttl = lp_parm_int(NULL, "nbtd", "bcast_ttl", 300000); iname->registration_time = timeval_zero(); iname->wins_server = NULL; diff --git a/source4/nbt_server/wins/wins_ldb.c b/source4/nbt_server/wins/wins_ldb.c index 1fa073dc0d9..2e5889fb1e6 100644 --- a/source4/nbt_server/wins/wins_ldb.c +++ b/source4/nbt_server/wins/wins_ldb.c @@ -87,7 +87,7 @@ static int wins_ldb_init(struct ldb_module *ctx) ctx->private_data = NULL; - owner = lp_parm_string(-1, "winsdb", "local_owner"); + owner = lp_parm_string(NULL, "winsdb", "local_owner"); if (!owner) { owner = iface_n_ip(0); if (!owner) { diff --git a/source4/nbt_server/wins/winsclient.c b/source4/nbt_server/wins/winsclient.c index 279462289d2..e18885c327a 100644 --- a/source4/nbt_server/wins/winsclient.c +++ b/source4/nbt_server/wins/winsclient.c @@ -58,7 +58,7 @@ static void nbtd_wins_register_retry(struct event_context *ev, struct timed_even static void nbtd_wins_start_refresh_timer(struct nbtd_iface_name *iname) { uint32_t refresh_time; - uint32_t max_refresh_time = lp_parm_int(-1, "nbtd", "max_refresh_time", 7200); + uint32_t max_refresh_time = lp_parm_int(NULL, "nbtd", "max_refresh_time", 7200); refresh_time = MIN(max_refresh_time, iname->ttl/2); @@ -179,7 +179,7 @@ static void nbtd_wins_register_handler(struct composite_context *c) if (NT_STATUS_EQUAL(status, NT_STATUS_IO_TIMEOUT)) { /* none of the WINS servers responded - try again periodically */ - int wins_retry_time = lp_parm_int(-1, "nbtd", "wins_retry", 300); + int wins_retry_time = lp_parm_int(NULL, "nbtd", "wins_retry", 300); event_add_timed(iname->iface->nbtsrv->task->event_ctx, iname, timeval_current_ofs(wins_retry_time, 0), diff --git a/source4/nbt_server/wins/winsdb.c b/source4/nbt_server/wins/winsdb.c index cfaee05020d..6b26ba2d634 100644 --- a/source4/nbt_server/wins/winsdb.c +++ b/source4/nbt_server/wins/winsdb.c @@ -988,7 +988,7 @@ static BOOL winsdb_check_or_add_module_list(struct winsdb_handle *h) talloc_free(h->ldb); h->ldb = NULL; - if (lp_parm_bool(-1,"winsdb", "nosync", False)) { + if (lp_parm_bool(NULL,"winsdb", "nosync", false)) { flags |= LDB_FLG_NOSYNC; } @@ -1021,7 +1021,7 @@ struct winsdb_handle *winsdb_connect(TALLOC_CTX *mem_ctx, enum winsdb_handle_cal h = talloc(mem_ctx, struct winsdb_handle); if (!h) return NULL; - if (lp_parm_bool(-1,"winsdb", "nosync", False)) { + if (lp_parm_bool(NULL,"winsdb", "nosync", false)) { flags |= LDB_FLG_NOSYNC; } @@ -1031,7 +1031,7 @@ struct winsdb_handle *winsdb_connect(TALLOC_CTX *mem_ctx, enum winsdb_handle_cal h->caller = caller; - owner = lp_parm_string(-1, "winsdb", "local_owner"); + owner = lp_parm_string(NULL, "winsdb", "local_owner"); if (!owner) { owner = iface_n_ip(0); } diff --git a/source4/nbt_server/wins/winsserver.c b/source4/nbt_server/wins/winsserver.c index 47d25403864..fd0188cbf0c 100644 --- a/source4/nbt_server/wins/winsserver.c +++ b/source4/nbt_server/wins/winsserver.c @@ -615,7 +615,7 @@ static void nbtd_wins_randomize1Clist(const char **addresses, struct socket_addr ldb_qsort(addresses, num_addrs , sizeof(addresses[0]), src, (ldb_qsort_cmp_fn_t)nbtd_wins_randomize1Clist_sort); - mask = lp_parm_string(-1, "nbtd", "wins_randomize1Clist_mask"); + mask = lp_parm_string(NULL, "nbtd", "wins_randomize1Clist_mask"); if (!mask) { mask = "255.255.255.0"; } @@ -691,7 +691,8 @@ static void nbtd_winsserver_query(struct nbt_name_socket *nbtsock, * Typ: Daten REG_DWORD * Value: 0 = deactivated, 1 = activated */ - if (name->type == NBT_NAME_LOGON && lp_parm_bool(-1, "nbtd", "wins_prepend1Bto1Cqueries", True)) { + if (name->type == NBT_NAME_LOGON && + lp_parm_bool(NULL, "nbtd", "wins_prepend1Bto1Cqueries", true)) { struct nbt_name name_1b; name_1b = *name; @@ -786,7 +787,8 @@ static void nbtd_winsserver_query(struct nbt_name_socket *nbtsock, * Typ: Daten REG_DWORD * Value: 0 = deactivated, 1 = activated */ - if (name->type == NBT_NAME_LOGON && lp_parm_bool(-1, "nbtd", "wins_randomize1Clist", False)) { + if (name->type == NBT_NAME_LOGON && + lp_parm_bool(NULL, "nbtd", "wins_randomize1Clist", false)) { nbtd_wins_randomize1Clist(addresses, src); } @@ -965,9 +967,9 @@ NTSTATUS nbtd_winsserver_init(struct nbtd_server *nbtsrv) nbtsrv->winssrv->config.max_renew_interval = lp_max_wins_ttl(); nbtsrv->winssrv->config.min_renew_interval = lp_min_wins_ttl(); - tmp = lp_parm_int(-1,"wreplsrv","tombstone_interval", 6*24*60*60); + tmp = lp_parm_int(NULL, "wreplsrv", "tombstone_interval", 6*24*60*60); nbtsrv->winssrv->config.tombstone_interval = tmp; - tmp = lp_parm_int(-1,"wreplsrv","tombstone_timeout", 1*24*60*60); + tmp = lp_parm_int(NULL, "wreplsrv"," tombstone_timeout", 1*24*60*60); nbtsrv->winssrv->config.tombstone_timeout = tmp; nbtsrv->winssrv->wins_db = winsdb_connect(nbtsrv->winssrv, WINSDB_HANDLE_CALLER_NBTD); diff --git a/source4/ntvfs/common/opendb.c b/source4/ntvfs/common/opendb.c index 63c6abd3dee..1b1573bc961 100644 --- a/source4/ntvfs/common/opendb.c +++ b/source4/ntvfs/common/opendb.c @@ -62,7 +62,7 @@ _PUBLIC_ struct odb_context *odb_init(TALLOC_CTX *mem_ctx, struct ntvfs_context *ntvfs_ctx) { if (ops == NULL) { - if (lp_parm_bool(-1, "ctdb", "opendb", False)) { + if (lp_parm_bool(NULL, "ctdb", "opendb", false)) { odb_ctdb_init_ops(); } else { odb_tdb_init_ops(); diff --git a/source4/ntvfs/common/opendb_tdb.c b/source4/ntvfs/common/opendb_tdb.c index 0a79b791250..7c6e9f48b3d 100644 --- a/source4/ntvfs/common/opendb_tdb.c +++ b/source4/ntvfs/common/opendb_tdb.c @@ -88,7 +88,7 @@ static struct odb_context *odb_tdb_init(TALLOC_CTX *mem_ctx, odb->ntvfs_ctx = ntvfs_ctx; /* leave oplocks disabled by default until the code is working */ - odb->oplocks = lp_parm_bool(-1, "opendb", "oplocks", False); + odb->oplocks = lp_parm_bool(NULL, "opendb", "oplocks", false); return odb; } diff --git a/source4/ntvfs/posix/pvfs_shortname.c b/source4/ntvfs/posix/pvfs_shortname.c index 75e474a94e7..9e02125dc7a 100644 --- a/source4/ntvfs/posix/pvfs_shortname.c +++ b/source4/ntvfs/posix/pvfs_shortname.c @@ -614,7 +614,7 @@ NTSTATUS pvfs_mangle_init(struct pvfs_state *pvfs) } /* by default have a max of 512 entries in the cache. */ - ctx->cache_size = lp_parm_int(-1, "mangle", "cachesize", 512); + ctx->cache_size = lp_parm_int(NULL, "mangle", "cachesize", 512); ctx->prefix_cache = talloc_array(ctx, char *, ctx->cache_size); if (ctx->prefix_cache == NULL) { @@ -628,7 +628,7 @@ NTSTATUS pvfs_mangle_init(struct pvfs_state *pvfs) memset(ctx->prefix_cache, 0, sizeof(char *) * ctx->cache_size); memset(ctx->prefix_cache_hashes, 0, sizeof(uint32_t) * ctx->cache_size); - ctx->mangle_prefix = lp_parm_int(-1, "mangle", "prefix", -1); + ctx->mangle_prefix = lp_parm_int(NULL, "mangle", "prefix", -1); if (ctx->mangle_prefix < 0 || ctx->mangle_prefix > 6) { ctx->mangle_prefix = DEFAULT_MANGLE_PREFIX; } diff --git a/source4/ntvfs/sysdep/inotify.c b/source4/ntvfs/sysdep/inotify.c index 6fab1018ca5..b73ee2c5261 100644 --- a/source4/ntvfs/sysdep/inotify.c +++ b/source4/ntvfs/sysdep/inotify.c @@ -245,7 +245,7 @@ static NTSTATUS inotify_setup(struct sys_notify_context *ctx) { struct inotify_private *in; - if (!lp_parm_bool(-1, "notify", "inotify", True)) { + if (!lp_parm_bool(NULL, "notify", "inotify", true)) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c index c7c76568630..61b1aafbf49 100644 --- a/source4/param/loadparm.c +++ b/source4/param/loadparm.c @@ -819,19 +819,15 @@ static const char *lp_string(const char *s) int fn_name(void) {return(*(int *)(ptr));} #define FN_LOCAL_STRING(fn_name,val) \ - const char *fn_name(int i) {return(lp_string((LP_SNUM_OK(i) && loadparm.ServicePtrs[(i)]->val) ? loadparm.ServicePtrs[(i)]->val : sDefault.val));} + const char *fn_name(struct service *service) {return(lp_string((const char *)((service != NULL && service->val != NULL) ? service->val : sDefault.val)));} #define FN_LOCAL_CONST_STRING(fn_name,val) \ - const char *fn_name(int i) {return (const char *)((LP_SNUM_OK(i) && loadparm.ServicePtrs[(i)]->val) ? loadparm.ServicePtrs[(i)]->val : sDefault.val);} + const char *fn_name(struct service *service) {return (const char *)(service != NULL && service->val != NULL) ? service->val : sDefault.val;} #define FN_LOCAL_LIST(fn_name,val) \ - const char **fn_name(int i) {return(const char **)(LP_SNUM_OK(i)? loadparm.ServicePtrs[(i)]->val : sDefault.val);} + const char **fn_name(struct service *service) {return(const char **)(service != NULL && service->val != NULL? service->val : sDefault.val);} #define FN_LOCAL_BOOL(fn_name,val) \ - bool fn_name(int i) {return(LP_SNUM_OK(i)? loadparm.ServicePtrs[(i)]->val : sDefault.val);} -#if 0 /* unused */ -#define FN_LOCAL_CHAR(fn_name,val) \ - char fn_name(int i) {return(LP_SNUM_OK(i)? ServicePtrs[(i)]->val : sDefault.val);} -#endif + bool fn_name(struct service *service) {return((service != NULL)? service->val : sDefault.val);} #define FN_LOCAL_INTEGER(fn_name,val) \ - int fn_name(int i) {return(LP_SNUM_OK(i)? loadparm.ServicePtrs[(i)]->val : sDefault.val);} + int fn_name(struct service *service) {return((service != NULL)? service->val : sDefault.val);} _PUBLIC_ FN_GLOBAL_INTEGER(lp_server_role, &loadparm.Globals.server_role) _PUBLIC_ FN_GLOBAL_LIST(lp_smb_ports, &loadparm.Globals.smb_ports) @@ -968,16 +964,12 @@ static void init_copymap(struct service * pservice); /* This is a helper function for parametrical options support. */ /* It returns a pointer to parametrical option value if it exists or NULL otherwise */ /* Actual parametrical functions are quite simple */ -const char *lp_get_parametric(int lookup_service, const char *type, const char *option) +const char *lp_get_parametric(struct service *service, const char *type, const char *option) { char *vfskey; struct param_opt *data; - if (lookup_service >= 0 && !LP_SNUM_OK(lookup_service)) - return NULL; - - data = (lookup_service < 0) ? - loadparm.Globals.param_opt : loadparm.ServicePtrs[lookup_service]->param_opt; + data = (service == NULL ? loadparm.Globals.param_opt : service->param_opt); asprintf(&vfskey, "%s:%s", type, option); strlower(vfskey); @@ -990,7 +982,7 @@ const char *lp_get_parametric(int lookup_service, const char *type, const char * data = data->next; } - if (lookup_service >= 0) { + if (service != NULL) { /* Try to fetch the same option but from globals */ /* but only if we are not already working with Globals */ for (data = loadparm.Globals.param_opt; data; @@ -1075,9 +1067,10 @@ static bool lp_bool(const char *s) /* Parametric option has following syntax: 'Type: option = value' */ /* Returned value is allocated in 'lp_talloc' context */ -const char *lp_parm_string(int lookup_service, const char *type, const char *option) +const char *lp_parm_string(struct service *service, const char *type, + const char *option) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return lp_string(value); @@ -1089,10 +1082,10 @@ const char *lp_parm_string(int lookup_service, const char *type, const char *opt /* Parametric option has following syntax: 'Type: option = value' */ /* Returned value is allocated in 'lp_talloc' context */ -const char **lp_parm_string_list(int lookup_service, const char *type, const char *option, - const char *separator) +const char **lp_parm_string_list(struct service *service, const char *type, + const char *option, const char *separator) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return str_list_make(talloc_autofree_context(), value, separator); @@ -1103,9 +1096,10 @@ const char **lp_parm_string_list(int lookup_service, const char *type, const cha /* Return parametric option from a given service. Type is a part of option before ':' */ /* Parametric option has following syntax: 'Type: option = value' */ -int lp_parm_int(int lookup_service, const char *type, const char *option, int default_v) +int lp_parm_int(struct service *service, const char *type, const char *option, + int default_v) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return lp_int(value); @@ -1118,11 +1112,12 @@ int lp_parm_int(int lookup_service, const char *type, const char *option, int de * Parametric option has following syntax: 'Type: option = value'. */ -int lp_parm_bytes(int lookup_service, const char *type, const char *option, int default_v) +int lp_parm_bytes(struct service *service, const char *type, + const char *option, int default_v) { uint64_t bval; - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value && conv_str_size(value, &bval)) { if (bval <= INT_MAX) { @@ -1136,9 +1131,10 @@ int lp_parm_bytes(int lookup_service, const char *type, const char *option, int /* Return parametric option from a given service. Type is a part of option before ':' */ /* Parametric option has following syntax: 'Type: option = value' */ -unsigned long lp_parm_ulong(int lookup_service, const char *type, const char *option, unsigned long default_v) +unsigned long lp_parm_ulong(struct service *service, const char *type, + const char *option, unsigned long default_v) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return lp_ulong(value); @@ -1147,9 +1143,10 @@ unsigned long lp_parm_ulong(int lookup_service, const char *type, const char *op } -double lp_parm_double(int lookup_service, const char *type, const char *option, double default_v) +double lp_parm_double(struct service *service, const char *type, + const char *option, double default_v) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return lp_double(value); @@ -1160,10 +1157,10 @@ double lp_parm_double(int lookup_service, const char *type, const char *option, /* Return parametric option from a given service. Type is a part of option before ':' */ /* Parametric option has following syntax: 'Type: option = value' */ -bool lp_parm_bool(int lookup_service, const char *type, const char *option, - bool default_v) +bool lp_parm_bool(struct service *service, const char *type, + const char *option, bool default_v) { - const char *value = lp_get_parametric(lookup_service, type, option); + const char *value = lp_get_parametric(service, type, option); if (value) return lp_bool(value); @@ -1261,22 +1258,22 @@ static struct service *add_a_service(const struct service *pservice, const char from service ifrom. ***************************************************************************/ -bool lp_add_home(const char *pszHomename, int iDefaultService, +bool lp_add_home(const char *pszHomename, struct service *default_service, const char *user, const char *pszHomedir) { struct service *service; pstring newHomedir; - service = add_a_service(loadparm.ServicePtrs[iDefaultService], pszHomename); + service = add_a_service(default_service, pszHomename); if (service == NULL) return false; - if (!(*(loadparm.ServicePtrs[iDefaultService]->szPath)) - || strequal(loadparm.ServicePtrs[iDefaultService]->szPath, lp_pathname(-1))) { + if (!(*(default_service->szPath)) + || strequal(default_service->szPath, sDefault.szPath)) { pstrcpy(newHomedir, pszHomedir); } else { - pstrcpy(newHomedir, lp_pathname(iDefaultService)); + pstrcpy(newHomedir, lp_pathname(default_service)); string_sub(newHomedir,"%H", pszHomedir, sizeof(newHomedir)); } @@ -1285,8 +1282,8 @@ bool lp_add_home(const char *pszHomename, int iDefaultService, if (!(*(service->comment))) { service->comment = talloc_asprintf(service, "Home directory of %s", user); } - service->bAvailable = sDefault.bAvailable; - service->bBrowseable = sDefault.bBrowseable; + service->bAvailable = default_service->bAvailable; + service->bBrowseable = default_service->bBrowseable; DEBUG(3, ("adding home's share [%s] for user '%s' at '%s'\n", pszHomename, user, newHomedir)); @@ -1298,9 +1295,10 @@ bool lp_add_home(const char *pszHomename, int iDefaultService, Add a new service, based on an old one. ***************************************************************************/ -struct service *lp_add_service(const char *pszService, int iDefaultService) +struct service *lp_add_service(const char *pszService, + struct service *default_service) { - return add_a_service(loadparm.ServicePtrs[iDefaultService], pszService); + return add_a_service(default_service, pszService); } /*************************************************************************** @@ -1338,12 +1336,11 @@ static bool lp_add_hidden(const char *name, const char *fstype) Add a new printer service, with defaults coming from service iFrom. ***************************************************************************/ -bool lp_add_printer(const char *pszPrintername, int iDefaultService) +bool lp_add_printer(const char *pszPrintername, struct service *default_service) { const char *comment = "From Printcap"; struct service *service; - service = add_a_service(loadparm.ServicePtrs[iDefaultService], - pszPrintername); + service = add_a_service(default_service, pszPrintername); if (service == NULL) return false; @@ -1406,12 +1403,12 @@ struct parm_struct *lp_parm_struct(const char *name) /* return the parameter pointer for a parameter */ -void *lp_parm_ptr(int snum, struct parm_struct *parm) +void *lp_parm_ptr(struct service *service, struct parm_struct *parm) { - if (snum == -1) { + if (service == NULL) return parm->ptr; - } - return ((char *)loadparm.ServicePtrs[snum]) + PTR_DIFF(parm->ptr, &sDefault); + + return ((char *)service) + PTR_DIFF(parm->ptr, &sDefault); } /*************************************************************************** @@ -2516,15 +2513,6 @@ bool lp_load(void) return bRetval; } -/*************************************************************************** - Reset the max number of services. -***************************************************************************/ - -void lp_resetnumservices(void) -{ - loadparm.iNumServices = 0; -} - /*************************************************************************** Return the max number of services. ***************************************************************************/ @@ -2550,22 +2538,35 @@ void lp_dump(FILE *f, bool show_defaults, int maxtoprint) dump_a_service(&sDefault, f); for (iService = 0; iService < maxtoprint; iService++) - lp_dump_one(f, show_defaults, iService); + lp_dump_one(f, show_defaults, loadparm.ServicePtrs[iService]); } /*************************************************************************** Display the contents of one service in human-readable form. ***************************************************************************/ -void lp_dump_one(FILE *f, bool show_defaults, int snum) +void lp_dump_one(FILE *f, bool show_defaults, struct service *service) { - if (VALID(snum)) { - if (loadparm.ServicePtrs[snum]->szService[0] == '\0') + if (service != NULL) { + if (service->szService[0] == '\0') return; - dump_a_service(loadparm.ServicePtrs[snum], f); + dump_a_service(service, f); } } +struct service *lp_servicebynum(int snum) +{ + return loadparm.ServicePtrs[snum]; +} + +struct service *lp_service(const char *service_name) +{ + int snum = lp_servicenumber(service_name); + if (snum < 0) + return NULL; + return loadparm.ServicePtrs[snum]; +} + /*************************************************************************** Return the number of the service with the given name, or -1 if it doesn't exist. Note that this is a DIFFERENT ANIMAL from the internal function @@ -2619,11 +2620,11 @@ int lp_find_valid_service(const char *pszServiceName) /******************************************************************* A useful volume label function. ********************************************************************/ -const char *volume_label(int snum) +const char *volume_label(struct service *service) { - const char *ret = lp_volume(snum); + const char *ret = lp_volume(service); if (!*ret) - return lp_servicename(snum); + return lp_servicename(service); return ret; } @@ -2646,11 +2647,11 @@ void lp_remove_service(int snum) loadparm.ServicePtrs[snum] = NULL; } -const char *lp_printername(int snum) +const char *lp_printername(struct service *service) { - const char *ret = _lp_printername(snum); + const char *ret = _lp_printername(service); if (ret == NULL || (ret != NULL && *ret == '\0')) - ret = lp_const_servicename(snum); + ret = lp_const_servicename(service); return ret; } diff --git a/source4/param/param.h b/source4/param/param.h index 5f5da58388f..9b21acf726d 100644 --- a/source4/param/param.h +++ b/source4/param/param.h @@ -57,7 +57,7 @@ enum announce_as {/* Types of machine we can announce as. */ ANNOUNCE_AS_NT_WORKSTATION=4 }; - +struct service; #include "param/proto.h" diff --git a/source4/param/share_classic.c b/source4/param/share_classic.c index 15f52eb9f1c..0c393223450 100644 --- a/source4/param/share_classic.c +++ b/source4/param/share_classic.c @@ -23,8 +23,8 @@ #include "param/share.h" #include "param/param.h" -struct sclassic_snum { - int snum; +struct service { + struct service *service; }; static NTSTATUS sclassic_init(TALLOC_CTX *mem_ctx, const struct share_ops *ops, struct share_context **ctx) @@ -43,7 +43,7 @@ static NTSTATUS sclassic_init(TALLOC_CTX *mem_ctx, const struct share_ops *ops, static const char *sclassic_string_option(struct share_config *scfg, const char *opt_name, const char *defval) { - struct sclassic_snum *s = talloc_get_type(scfg->opaque, struct sclassic_snum); + struct service *s = talloc_get_type(scfg->opaque, struct service); char *parm, *val; const char *ret; @@ -56,7 +56,7 @@ static const char *sclassic_string_option(struct share_config *scfg, const char *val = '\0'; val++; - ret = lp_parm_string(s->snum, parm, val); + ret = lp_parm_string(s, parm, val); if (!ret) { ret = defval; } @@ -69,25 +69,25 @@ static const char *sclassic_string_option(struct share_config *scfg, const char } if (strcmp(opt_name, SHARE_PATH) == 0) { - return lp_pathname(s->snum); + return lp_pathname(s); } if (strcmp(opt_name, SHARE_COMMENT) == 0) { - return lp_comment(s->snum); + return lp_comment(s); } if (strcmp(opt_name, SHARE_VOLUME) == 0) { - return volume_label(s->snum); + return volume_label(s); } if (strcmp(opt_name, SHARE_TYPE) == 0) { - if (lp_print_ok(s->snum)) { + if (lp_print_ok(s)) { return "PRINTER"; } - if (strcmp("NTFS", lp_fstype(s->snum)) == 0) { + if (strcmp("NTFS", lp_fstype(s)) == 0) { return "DISK"; } - return lp_fstype(s->snum); + return lp_fstype(s); } if (strcmp(opt_name, SHARE_PASSWORD) == 0) { @@ -100,9 +100,9 @@ static const char *sclassic_string_option(struct share_config *scfg, const char return defval; } -int sclassic_int_option(struct share_config *scfg, const char *opt_name, int defval) +static int sclassic_int_option(struct share_config *scfg, const char *opt_name, int defval) { - struct sclassic_snum *s = talloc_get_type(scfg->opaque, struct sclassic_snum); + struct service *s = talloc_get_type(scfg->opaque, struct service); char *parm, *val; int ret; @@ -115,7 +115,7 @@ int sclassic_int_option(struct share_config *scfg, const char *opt_name, int def *val = '\0'; val++; - ret = lp_parm_int(s->snum, parm, val, defval); + ret = lp_parm_int(s, parm, val, defval); if (!ret) { ret = defval; } @@ -124,27 +124,27 @@ int sclassic_int_option(struct share_config *scfg, const char *opt_name, int def } if (strcmp(opt_name, SHARE_CSC_POLICY) == 0) { - return lp_csc_policy(s->snum); + return lp_csc_policy(s); } if (strcmp(opt_name, SHARE_MAX_CONNECTIONS) == 0) { - return lp_max_connections(s->snum); + return lp_max_connections(s); } if (strcmp(opt_name, SHARE_CREATE_MASK) == 0) { - return lp_create_mask(s->snum); + return lp_create_mask(s); } if (strcmp(opt_name, SHARE_DIR_MASK) == 0) { - return lp_dir_mask(s->snum); + return lp_dir_mask(s); } if (strcmp(opt_name, SHARE_FORCE_DIR_MODE) == 0) { - return lp_force_dir_mode(s->snum); + return lp_force_dir_mode(s); } if (strcmp(opt_name, SHARE_FORCE_CREATE_MODE) == 0) { - return lp_force_create_mode(s->snum); + return lp_force_create_mode(s); } @@ -154,9 +154,10 @@ int sclassic_int_option(struct share_config *scfg, const char *opt_name, int def return defval; } -BOOL sclassic_bool_option(struct share_config *scfg, const char *opt_name, BOOL defval) +static bool sclassic_bool_option(struct share_config *scfg, const char *opt_name, + bool defval) { - struct sclassic_snum *s = talloc_get_type(scfg->opaque, struct sclassic_snum); + struct service *s = talloc_get_type(scfg->opaque, struct service); char *parm, *val; BOOL ret; @@ -169,49 +170,49 @@ BOOL sclassic_bool_option(struct share_config *scfg, const char *opt_name, BOOL *val = '\0'; val++; - ret = lp_parm_bool(s->snum, parm, val, defval); + ret = lp_parm_bool(s, parm, val, defval); talloc_free(parm); return ret; } if (strcmp(opt_name, SHARE_AVAILABLE) == 0) { - return lp_snum_ok(s->snum); + return s != NULL; } if (strcmp(opt_name, SHARE_BROWSEABLE) == 0) { - return lp_browseable(s->snum); + return lp_browseable(s); } if (strcmp(opt_name, SHARE_READONLY) == 0) { - return lp_readonly(s->snum); + return lp_readonly(s); } if (strcmp(opt_name, SHARE_MAP_SYSTEM) == 0) { - return lp_map_system(s->snum); + return lp_map_system(s); } if (strcmp(opt_name, SHARE_MAP_HIDDEN) == 0) { - return lp_map_hidden(s->snum); + return lp_map_hidden(s); } if (strcmp(opt_name, SHARE_MAP_ARCHIVE) == 0) { - return lp_map_archive(s->snum); + return lp_map_archive(s); } if (strcmp(opt_name, SHARE_STRICT_LOCKING) == 0) { - return lp_strict_locking(s->snum); + return lp_strict_locking(s); } if (strcmp(opt_name, SHARE_STRICT_SYNC) == 0) { - return lp_strict_sync(s->snum); + return lp_strict_sync(s); } if (strcmp(opt_name, SHARE_MSDFS_ROOT) == 0) { - return lp_msdfs_root(s->snum); + return lp_msdfs_root(s); } if (strcmp(opt_name, SHARE_CI_FILESYSTEM) == 0) { - return lp_ci_filesystem(s->snum); + return lp_ci_filesystem(s); } DEBUG(0,("request for unknown share bool option '%s'\n", @@ -220,9 +221,9 @@ BOOL sclassic_bool_option(struct share_config *scfg, const char *opt_name, BOOL return defval; } -const char **sclassic_string_list_option(TALLOC_CTX *mem_ctx, struct share_config *scfg, const char *opt_name) +static const char **sclassic_string_list_option(TALLOC_CTX *mem_ctx, struct share_config *scfg, const char *opt_name) { - struct sclassic_snum *s = talloc_get_type(scfg->opaque, struct sclassic_snum); + struct service *s = talloc_get_type(scfg->opaque, struct service); char *parm, *val; const char **ret; @@ -235,21 +236,21 @@ const char **sclassic_string_list_option(TALLOC_CTX *mem_ctx, struct share_confi *val = '\0'; val++; - ret = lp_parm_string_list(s->snum, parm, val, ",;"); + ret = lp_parm_string_list(s, parm, val, ",;"); talloc_free(parm); return ret; } if (strcmp(opt_name, SHARE_HOSTS_ALLOW) == 0) { - return lp_hostsallow(s->snum); + return lp_hostsallow(s); } if (strcmp(opt_name, SHARE_HOSTS_DENY) == 0) { - return lp_hostsdeny(s->snum); + return lp_hostsdeny(s); } if (strcmp(opt_name, SHARE_NTVFS_HANDLER) == 0) { - return lp_ntvfs_handler(s->snum); + return lp_ntvfs_handler(s); } DEBUG(0,("request for unknown share list option '%s'\n", @@ -258,10 +259,10 @@ const char **sclassic_string_list_option(TALLOC_CTX *mem_ctx, struct share_confi return NULL; } -NTSTATUS sclassic_list_all(TALLOC_CTX *mem_ctx, - struct share_context *ctx, - int *count, - const char ***names) +static NTSTATUS sclassic_list_all(TALLOC_CTX *mem_ctx, + struct share_context *ctx, + int *count, + const char ***names) { int i; int num_services; @@ -276,7 +277,7 @@ NTSTATUS sclassic_list_all(TALLOC_CTX *mem_ctx, } for (i = 0; i < num_services; i++) { - n[i] = talloc_strdup(n, lp_servicename(i)); + n[i] = talloc_strdup(n, lp_servicename(lp_servicebynum(i))); if (!n[i]) { DEBUG(0,("ERROR: Out of memory!\n")); talloc_free(n); @@ -290,24 +291,17 @@ NTSTATUS sclassic_list_all(TALLOC_CTX *mem_ctx, return NT_STATUS_OK; } -NTSTATUS sclassic_get_config(TALLOC_CTX *mem_ctx, - struct share_context *ctx, - const char *name, - struct share_config **scfg) +static NTSTATUS sclassic_get_config(TALLOC_CTX *mem_ctx, + struct share_context *ctx, + const char *name, + struct share_config **scfg) { - int i, snum; struct share_config *s; - struct sclassic_snum *scnum; + struct service *service; - snum = -1; - for (i = 0; i < lp_numservices(); i++) { - if (strcasecmp_m(name, lp_servicename(i)) == 0) { - snum = i; - break; - } - } + service = lp_service(name); - if (snum < 0) { + if (service == NULL) { return NT_STATUS_OBJECT_NAME_NOT_FOUND; } @@ -317,22 +311,14 @@ NTSTATUS sclassic_get_config(TALLOC_CTX *mem_ctx, return NT_STATUS_NO_MEMORY; } - s->name = talloc_strdup(s, lp_servicename(snum)); + s->name = talloc_strdup(s, lp_servicename(service)); if (!s->name) { DEBUG(0,("ERROR: Out of memory!\n")); talloc_free(s); return NT_STATUS_NO_MEMORY; } - scnum = talloc(s, struct sclassic_snum); - if (!scnum) { - DEBUG(0,("ERROR: Out of memory!\n")); - talloc_free(s); - return NT_STATUS_NO_MEMORY; - } - scnum->snum = snum; - - s->opaque = (void *)scnum; + s->opaque = (void *)service; s->ctx = ctx; *scfg = s; diff --git a/source4/rpc_server/common/server_info.c b/source4/rpc_server/common/server_info.c index 7ca13fcf945..8848dcd1df0 100644 --- a/source4/rpc_server/common/server_info.c +++ b/source4/rpc_server/common/server_info.c @@ -36,7 +36,7 @@ _PUBLIC_ enum srvsvc_PlatformId dcesrv_common_get_platform_id(TALLOC_CTX *mem_ct { enum srvsvc_PlatformId id; - id = lp_parm_int(-1, "server_info", "platform_id", PLATFORM_ID_NT); + id = lp_parm_int(NULL, "server_info", "platform_id", PLATFORM_ID_NT); return id; } @@ -66,19 +66,19 @@ const char *dcesrv_common_get_domain_name(TALLOC_CTX *mem_ctx, struct dcesrv_con /* This hardcoded value should go into a ldb database! */ _PUBLIC_ uint32_t dcesrv_common_get_version_major(TALLOC_CTX *mem_ctx, struct dcesrv_context *dce_ctx) { - return lp_parm_int(-1, "server_info", "version_major", 5); + return lp_parm_int(NULL, "server_info", "version_major", 5); } /* This hardcoded value should go into a ldb database! */ _PUBLIC_ uint32_t dcesrv_common_get_version_minor(TALLOC_CTX *mem_ctx, struct dcesrv_context *dce_ctx) { - return lp_parm_int(-1, "server_info", "version_minor", 2); + return lp_parm_int(NULL, "server_info", "version_minor", 2); } /* This hardcoded value should go into a ldb database! */ _PUBLIC_ uint32_t dcesrv_common_get_version_build(TALLOC_CTX *mem_ctx, struct dcesrv_context *dce_ctx) { - return lp_parm_int(-1, "server_info", "version_build", 3790); + return lp_parm_int(NULL, "server_info", "version_build", 3790); } /* This hardcoded value should go into a ldb database! */ diff --git a/source4/rpc_server/remote/dcesrv_remote.c b/source4/rpc_server/remote/dcesrv_remote.c index e51a847ee27..2b481919d12 100644 --- a/source4/rpc_server/remote/dcesrv_remote.c +++ b/source4/rpc_server/remote/dcesrv_remote.c @@ -40,12 +40,12 @@ static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct NTSTATUS status; const struct ndr_interface_table *table; struct dcesrv_remote_private *private; - const char *binding = lp_parm_string(-1, "dcerpc_remote", "binding"); + const char *binding = lp_parm_string(NULL, "dcerpc_remote", "binding"); const char *user, *pass, *domain; struct cli_credentials *credentials; BOOL machine_account; - machine_account = lp_parm_bool(-1, "dcerpc_remote", "use_machine_account", False); + machine_account = lp_parm_bool(NULL, "dcerpc_remote", "use_machine_account", false); private = talloc(dce_call->conn, struct dcesrv_remote_private); if (!private) { @@ -60,9 +60,9 @@ static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct return NT_STATUS_INVALID_PARAMETER; } - user = lp_parm_string(-1, "dcerpc_remote", "user"); - pass = lp_parm_string(-1, "dcerpc_remote", "password"); - domain = lp_parm_string(-1, "dceprc_remote", "domain"); + user = lp_parm_string(NULL, "dcerpc_remote", "user"); + pass = lp_parm_string(NULL, "dcerpc_remote", "password"); + domain = lp_parm_string(NULL, "dceprc_remote", "domain"); table = ndr_table_by_uuid(&iface->syntax_id.uuid); /* FIXME: What about if_version ? */ if (!table) { @@ -224,7 +224,7 @@ static NTSTATUS remote_register_one_iface(struct dcesrv_context *dce_ctx, const static NTSTATUS remote_op_init_server(struct dcesrv_context *dce_ctx, const struct dcesrv_endpoint_server *ep_server) { int i; - const char **ifaces = str_list_make(dce_ctx, lp_parm_string(-1,"dcerpc_remote","interfaces"),NULL); + const char **ifaces = str_list_make(dce_ctx, lp_parm_string(NULL,"dcerpc_remote","interfaces"),NULL); if (!ifaces) { DEBUG(3,("remote_op_init_server: no interfaces configured\n")); diff --git a/source4/script/mkproto.pl b/source4/script/mkproto.pl index 51888c704f5..84acd5069d0 100755 --- a/source4/script/mkproto.pl +++ b/source4/script/mkproto.pl @@ -139,7 +139,7 @@ sub handle_loadparm($$) my %smap = ( "GLOBAL" => "void", - "LOCAL" => "int " + "LOCAL" => "struct service *" ); $file->("$tmap{$type}$name($smap{$scope});\n"); diff --git a/source4/scripting/ejs/ejsrpc.c b/source4/scripting/ejs/ejsrpc.c index 966c803a307..53660d433f8 100644 --- a/source4/scripting/ejs/ejsrpc.c +++ b/source4/scripting/ejs/ejsrpc.c @@ -417,7 +417,7 @@ NTSTATUS ejs_push_array_uint8(struct ejs_rpc *ejs, const uint8_t *r, uint32_t length) { DATA_BLOB blob; - blob.data = discard_const(r); + blob.data = (uint8_t *)discard_const(r); blob.length = length; mprSetVar(v, name, mprDataBlob(blob)); return NT_STATUS_OK; diff --git a/source4/scripting/ejs/smbcalls_config.c b/source4/scripting/ejs/smbcalls_config.c index b31b70bda8b..6da978663ac 100644 --- a/source4/scripting/ejs/smbcalls_config.c +++ b/source4/scripting/ejs/smbcalls_config.c @@ -37,7 +37,7 @@ static int ejs_lpServices(MprVarHandle eid, int argc, char **argv) if (argc != 0) return -1; for (i=0;i{immediate} and not $self->{verbose}) { - print "$testname: $result [ $reason ]\n"; + if ($reason) { + print "$testname: $result [ $reason ]\n"; + } else { + print "$testname: $result\n"; + } print $self->{test_output}->{$state->{NAME}}."\n"; } $self->{test_output}->{$state->{NAME}} = ""; diff --git a/source4/smb_server/smb2/negprot.c b/source4/smb_server/smb2/negprot.c index 2aca91adf86..8aa652e27ee 100644 --- a/source4/smb_server/smb2/negprot.c +++ b/source4/smb_server/smb2/negprot.c @@ -196,7 +196,7 @@ void smb2srv_reply_smb_negprot(struct smbsrv_request *smb_req) req->in.size = NBT_HDR_SIZE+SMB2_HDR_BODY+body_fixed_size; req->in.allocated = req->in.size; - req->in.buffer = talloc_size(req, req->in.allocated); + req->in.buffer = talloc_array(req, uint8_t, req->in.allocated); if (!req->in.buffer) goto nomem; req->in.hdr = req->in.buffer + NBT_HDR_SIZE; req->in.body = req->in.hdr + SMB2_HDR_BODY; diff --git a/source4/smb_server/smb2/receive.c b/source4/smb_server/smb2/receive.c index 6a36d2f3658..e783620e52a 100644 --- a/source4/smb_server/smb2/receive.c +++ b/source4/smb_server/smb2/receive.c @@ -82,7 +82,8 @@ NTSTATUS smb2srv_setup_reply(struct smb2srv_request *req, uint16_t body_fixed_si req->out.size = SMB2_HDR_BODY+NBT_HDR_SIZE+body_fixed_size; req->out.allocated = req->out.size + body_dynamic_size; - req->out.buffer = talloc_size(req, req->out.allocated); + req->out.buffer = talloc_array(req, uint8_t, + req->out.allocated); NT_STATUS_HAVE_NO_MEMORY(req->out.buffer); req->out.hdr = req->out.buffer + NBT_HDR_SIZE; diff --git a/source4/smb_server/smb2/tcon.c b/source4/smb_server/smb2/tcon.c index b476e97168b..6d7e19e4709 100644 --- a/source4/smb_server/smb2/tcon.c +++ b/source4/smb_server/smb2/tcon.c @@ -41,7 +41,8 @@ static NTSTATUS smb2srv_send_oplock_break(void *p, struct ntvfs_handle *h, uint8 req = smb2srv_init_request(handle->tcon->smb_conn); NT_STATUS_HAVE_NO_MEMORY(req); - req->in.buffer = talloc_size(req, NBT_HDR_SIZE + SMB2_MIN_SIZE); + req->in.buffer = talloc_array(req, uint8_t, + NBT_HDR_SIZE + SMB2_MIN_SIZE); NT_STATUS_HAVE_NO_MEMORY(req->in.buffer); req->in.size = NBT_HDR_SIZE + SMB2_MIN_SIZE; req->in.allocated = req->in.size; diff --git a/source4/smbd/service_stream.c b/source4/smbd/service_stream.c index 84aebc9ce9f..794fd4f5b14 100644 --- a/source4/smbd/service_stream.c +++ b/source4/smbd/service_stream.c @@ -175,7 +175,7 @@ static void stream_new_connection(struct event_context *ev, srv_conn->event.fde = event_add_fd(ev, srv_conn, socket_get_fd(sock), 0, stream_io_handler_fde, srv_conn); - if (!socket_check_access(sock, "smbd", lp_hostsallow(-1), lp_hostsdeny(-1))) { + if (!socket_check_access(sock, "smbd", lp_hostsallow(NULL), lp_hostsdeny(NULL))) { stream_terminate_connection(srv_conn, "denied by access rules"); return; } diff --git a/source4/torture/auth/ntlmssp.c b/source4/torture/auth/ntlmssp.c index e97338d3a64..23269a0160b 100644 --- a/source4/torture/auth/ntlmssp.c +++ b/source4/torture/auth/ntlmssp.c @@ -44,7 +44,7 @@ static bool torture_ntlmssp_self_check(struct torture_context *tctx) gensec_start_mech_by_oid(gensec_security, GENSEC_OID_NTLMSSP), "Failed to start GENSEC for NTLMSSP"); - gensec_ntlmssp_state = gensec_security->private_data; + gensec_ntlmssp_state = (struct gensec_ntlmssp_state *)gensec_security->private_data; gensec_ntlmssp_state->session_key = strhex_to_data_blob("0102030405060708090a0b0c0d0e0f00"); dump_data_pw("NTLMSSP session key: \n", @@ -98,7 +98,7 @@ static bool torture_ntlmssp_self_check(struct torture_context *tctx) gensec_start_mech_by_oid(gensec_security, GENSEC_OID_NTLMSSP), "GENSEC start mech by oid"); - gensec_ntlmssp_state = gensec_security->private_data; + gensec_ntlmssp_state = (struct gensec_ntlmssp_state *)gensec_security->private_data; gensec_ntlmssp_state->session_key = strhex_to_data_blob("0102030405e538b0"); dump_data_pw("NTLMSSP session key: \n", diff --git a/source4/torture/ldap/cldap.c b/source4/torture/ldap/cldap.c index 8b7fa20b74e..585cab9b277 100644 --- a/source4/torture/ldap/cldap.c +++ b/source4/torture/ldap/cldap.c @@ -270,10 +270,10 @@ done: return ret; } -BOOL torture_cldap(struct torture_context *torture) +bool torture_cldap(struct torture_context *torture) { TALLOC_CTX *mem_ctx; - BOOL ret = True; + bool ret = true; const char *host = torture_setting_string(torture, "host", NULL); mem_ctx = talloc_init("torture_cldap"); diff --git a/source4/torture/libnet/libnet_BecomeDC.c b/source4/torture/libnet/libnet_BecomeDC.c index 9d67e093b10..9e870d9f266 100644 --- a/source4/torture/libnet/libnet_BecomeDC.c +++ b/source4/torture/libnet/libnet_BecomeDC.c @@ -442,7 +442,7 @@ static NTSTATUS test_apply_schema(struct test_become_dc_state *s, return werror_to_ntstatus(status); } - if (lp_parm_bool(-1, "become dc", "dump objects", False)) { + if (lp_parm_bool(NULL, "become dc", "dump objects", false)) { for (i=0; i < objs->num_objects; i++) { struct ldb_ldif ldif; fprintf(stdout, "#\n"); @@ -670,7 +670,7 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data, return werror_to_ntstatus(status); } - if (lp_parm_bool(-1, "become dc", "dump objects", False)) { + if (lp_parm_bool(NULL, "become dc", "dump objects", false)) { for (i=0; i < objs->num_objects; i++) { struct ldb_ldif ldif; fprintf(stdout, "#\n"); @@ -700,7 +700,7 @@ static NTSTATUS test_become_dc_store_chunk(void *private_data, return NT_STATUS_FOOBAR; } - if (lp_parm_bool(-1, "become dc", "dump objects", False)) { + if (lp_parm_bool(NULL, "become dc", "dump objects", false)) { DEBUG(0,("# %s\n", sa->lDAPDisplayName)); NDR_PRINT_DEBUG(drsuapi_DsReplicaLinkedAttribute, &linked_attributes[i]); dump_data(0, @@ -726,7 +726,7 @@ BOOL torture_net_become_dc(struct torture_context *torture) s = talloc_zero(torture, struct test_become_dc_state); if (!s) return False; - s->netbios_name = lp_parm_string(-1, "become dc", "smbtorture dc"); + s->netbios_name = lp_parm_string(NULL, "become dc", "smbtorture dc"); if (!s->netbios_name || !s->netbios_name[0]) { s->netbios_name = "smbtorturedc"; } @@ -834,7 +834,7 @@ BOOL torture_net_become_dc(struct torture_context *torture) goto cleanup; } - if (lp_parm_bool(-1, "become dc", "do not unjoin", false)) { + if (lp_parm_bool(NULL, "become dc", "do not unjoin", false)) { talloc_free(s); return ret; } diff --git a/source4/torture/libnet/libnet_user.c b/source4/torture/libnet/libnet_user.c index 186bd98aa5a..a642d4bf521 100644 --- a/source4/torture/libnet/libnet_user.c +++ b/source4/torture/libnet/libnet_user.c @@ -418,7 +418,7 @@ static void set_test_changes(TALLOC_CTX *mem_ctx, struct libnet_ModifyUser *r, case acct_expiry: continue_if_field_set(r->in.acct_expiry); now = timeval_add(&now, (random() % (31*24*60*60)), 0); - r->in.acct_expiry = talloc_memdup(mem_ctx, &now, sizeof(now)); + r->in.acct_expiry = (struct timeval *)talloc_memdup(mem_ctx, &now, sizeof(now)); fldname = "acct_expiry"; break; diff --git a/source4/torture/libnet/userinfo.c b/source4/torture/libnet/userinfo.c index 95975e630ed..314bc6d4daf 100644 --- a/source4/torture/libnet/userinfo.c +++ b/source4/torture/libnet/userinfo.c @@ -300,7 +300,7 @@ static BOOL test_userinfo_async(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, } -BOOL torture_userinfo(struct torture_context *torture) +bool torture_userinfo(struct torture_context *torture) { NTSTATUS status; struct dcerpc_pipe *p; diff --git a/source4/torture/libnet/userman.c b/source4/torture/libnet/userman.c index deebfd9014d..51e0016ea09 100644 --- a/source4/torture/libnet/userman.c +++ b/source4/torture/libnet/userman.c @@ -357,7 +357,7 @@ static BOOL test_usermod(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, case acct_expiry: continue_if_field_set(mod->in.change.acct_expiry); now = timeval_add(&now, (random() % (31*24*60*60)), 0); - mod->in.change.acct_expiry = talloc_memdup(mem_ctx, &now, sizeof(now)); + mod->in.change.acct_expiry = (struct timeval *)talloc_memdup(mem_ctx, &now, sizeof(now)); mod->in.change.fields |= USERMOD_FIELD_ACCT_EXPIRY; fldname = "acct_expiry"; break; @@ -533,7 +533,7 @@ done: } -BOOL torture_userdel(struct torture_context *torture) +bool torture_userdel(struct torture_context *torture) { NTSTATUS status; struct dcerpc_pipe *p; diff --git a/source4/torture/local/dbspeed.c b/source4/torture/local/dbspeed.c index 2a9eb49d010..fb4e5c3c3ad 100644 --- a/source4/torture/local/dbspeed.c +++ b/source4/torture/local/dbspeed.c @@ -29,7 +29,8 @@ float tdb_speed; -static BOOL tdb_add_record(struct tdb_wrap *tdbw, const char *fmt1, const char *fmt2, int i) +static bool tdb_add_record(struct tdb_wrap *tdbw, const char *fmt1, + const char *fmt2, int i) { TDB_DATA key, data; int ret; diff --git a/source4/torture/local/event.c b/source4/torture/local/event.c index e2c7de1c723..46acf5938e5 100644 --- a/source4/torture/local/event.c +++ b/source4/torture/local/event.c @@ -29,7 +29,7 @@ static int fde_count; static void fde_handler(struct event_context *ev_ctx, struct fd_event *f, uint16_t flags, void *private) { - int *fd = private; + int *fd = (int *)private; char c; #ifdef SA_SIGINFO kill(getpid(), SIGUSR1); @@ -43,14 +43,14 @@ static void fde_handler(struct event_context *ev_ctx, struct fd_event *f, static void finished_handler(struct event_context *ev_ctx, struct timed_event *te, struct timeval tval, void *private) { - int *finished = private; + int *finished = (int *)private; (*finished) = 1; } static void count_handler(struct event_context *ev_ctx, struct signal_event *te, int signum, int count, void *info, void *private) { - int *countp = private; + int *countp = (int *)private; (*countp) += count; } diff --git a/source4/torture/local/iconv.c b/source4/torture/local/iconv.c index 8c2d5a30549..06659b5e9cc 100644 --- a/source4/torture/local/iconv.c +++ b/source4/torture/local/iconv.c @@ -34,7 +34,7 @@ static bool iconv_untestable(struct torture_context *tctx) { iconv_t cd; - if (!lp_parm_bool(-1, "iconv", "native", true)) + if (!lp_parm_bool(NULL, "iconv", "native", true)) torture_skip(tctx, "system iconv disabled - skipping test"); cd = iconv_open("UTF-16LE", "UCS-4LE"); @@ -314,10 +314,10 @@ static bool test_codepoint(struct torture_context *tctx, unsigned int codepoint) static bool test_next_codepoint(struct torture_context *tctx) { + unsigned int codepoint; if (iconv_untestable(tctx)) return true; - unsigned int codepoint; for (codepoint=0;codepoint<(1<<20);codepoint++) { if (!test_codepoint(tctx, codepoint)) return false; @@ -403,13 +403,13 @@ struct torture_suite *torture_local_iconv(TALLOC_CTX *mem_ctx) struct torture_suite *suite = torture_suite_create(mem_ctx, "ICONV"); torture_suite_add_simple_test(suite, "next_codepoint()", - test_next_codepoint); + test_next_codepoint); torture_suite_add_simple_test(suite, "first 1M codepoints", - test_first_1m); + test_first_1m); torture_suite_add_simple_test(suite, "5M random UTF-16LE sequences", - test_random_5m); + test_random_5m); return suite; } diff --git a/source4/torture/local/irpc.c b/source4/torture/local/irpc.c index 7c5de2dd566..e113b63804a 100644 --- a/source4/torture/local/irpc.c +++ b/source4/torture/local/irpc.c @@ -86,7 +86,7 @@ static bool test_addone(struct torture_context *test, const void *_data, { struct echo_AddOne r; NTSTATUS status; - const struct irpc_test_data *data = _data; + const struct irpc_test_data *data = (const struct irpc_test_data *)_data; uint32_t value = (uint32_t)_value; /* make the call */ @@ -115,7 +115,7 @@ static bool test_echodata(struct torture_context *tctx, { struct echo_EchoData r; NTSTATUS status; - const struct irpc_test_data *data = tcase_data; + const struct irpc_test_data *data = (const struct irpc_test_data *)tcase_data; TALLOC_CTX *mem_ctx = tctx; /* make the call */ @@ -144,7 +144,7 @@ static bool test_echodata(struct torture_context *tctx, static void irpc_callback(struct irpc_request *irpc) { - struct echo_AddOne *r = irpc->r; + struct echo_AddOne *r = (struct echo_AddOne *)irpc->r; int *pong_count = (int *)irpc->async.private; NTSTATUS status = irpc_call_recv(irpc); if (!NT_STATUS_IS_OK(status)) { @@ -166,7 +166,7 @@ static bool test_speed(struct torture_context *tctx, { int ping_count = 0; int pong_count = 0; - const struct irpc_test_data *data = tcase_data; + const struct irpc_test_data *data = (const struct irpc_test_data *)tcase_data; struct timeval tv; struct echo_AddOne r; TALLOC_CTX *mem_ctx = tctx; diff --git a/source4/torture/local/sddl.c b/source4/torture/local/sddl.c index ac10627783d..3e6382309e2 100644 --- a/source4/torture/local/sddl.c +++ b/source4/torture/local/sddl.c @@ -33,7 +33,7 @@ static bool test_sddl(struct torture_context *tctx, { struct security_descriptor *sd, *sd2; struct dom_sid *domain; - const char *sddl = test_data; + const char *sddl = (const char *)test_data; const char *sddl2; TALLOC_CTX *mem_ctx = tctx; diff --git a/source4/torture/local/share.c b/source4/torture/local/share.c index 528f34f8617..a4250bccf9f 100644 --- a/source4/torture/local/share.c +++ b/source4/torture/local/share.c @@ -27,7 +27,7 @@ static bool test_list_empty(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); int count; const char **names; @@ -41,7 +41,7 @@ static bool test_create(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); int count; const char **names; int i; @@ -79,7 +79,7 @@ static bool test_create_invalid(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); NTSTATUS status; status = share_create(ctx, "bla", NULL, 0); @@ -102,7 +102,7 @@ static bool test_share_remove_invalid(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); NTSTATUS status; status = share_remove(ctx, "nonexistant"); @@ -121,7 +121,7 @@ static bool test_share_remove(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); struct share_info inf[] = { { SHARE_INFO_STRING, SHARE_TYPE, discard_const_p(void *, "IPC$") }, { SHARE_INFO_STRING, SHARE_PATH, discard_const_p(void *, "/tmp/bla") } @@ -144,7 +144,7 @@ static bool test_double_create(struct torture_context *tctx, const void *tcase_data, const void *test_data) { - struct share_context *ctx = discard_const(tcase_data); + struct share_context *ctx = (struct share_context *)discard_const(tcase_data); struct share_info inf[] = { { SHARE_INFO_STRING, SHARE_TYPE, discard_const_p(void *, "IPC$") }, { SHARE_INFO_STRING, SHARE_PATH, discard_const_p(void *, "/tmp/bla") } diff --git a/source4/torture/locktest.c b/source4/torture/locktest.c index 4f0bfa8e060..d18a1cb6e91 100644 --- a/source4/torture/locktest.c +++ b/source4/torture/locktest.c @@ -123,7 +123,7 @@ static struct smbcli_state *connect_one(char *share, int snum, int conn) char **unc_list = NULL; int num_unc_names; const char *p; - p = lp_parm_string(-1, "torture", "unclist"); + p = lp_parm_string(NULL, "torture", "unclist"); if (p) { char *h, *s; unc_list = file_lines_load(p, &num_unc_names, NULL); diff --git a/source4/torture/ndr/lsa.c b/source4/torture/ndr/lsa.c index 768c8db63ea..a72a03fa385 100644 --- a/source4/torture/ndr/lsa.c +++ b/source4/torture/ndr/lsa.c @@ -1747,7 +1747,7 @@ static const uint8_t lsarlookupsids3_out_data[] = { }; static bool lsarlookupsids3_out_check(struct torture_context *tctx, - struct lsa_LookupSids3 *r) + struct lsa_LookupSids3 *r) { /* FIXME: Handle */ torture_assert(tctx, r->out.names != NULL, "names ptr"); diff --git a/source4/torture/ndr/ndr.c b/source4/torture/ndr/ndr.c index 5c7dfc7c29a..18ede54867e 100644 --- a/source4/torture/ndr/ndr.c +++ b/source4/torture/ndr/ndr.c @@ -36,7 +36,7 @@ static bool wrap_ndr_pull_test(struct torture_context *tctx, struct torture_test *test) { bool (*check_fn) (struct torture_context *ctx, void *data) = test->fn; - const struct ndr_pull_test_data *data = test->data; + const struct ndr_pull_test_data *data = (const struct ndr_pull_test_data *)test->data; void *ds = talloc_zero_size(tctx, data->struct_size); struct ndr_pull *ndr = ndr_pull_init_blob(&(data->data), tctx); diff --git a/source4/torture/ndr/winreg.c b/source4/torture/ndr/winreg.c index d7c956efd6f..ab256a7152b 100644 --- a/source4/torture/ndr/winreg.c +++ b/source4/torture/ndr/winreg.c @@ -240,7 +240,7 @@ static const uint8_t querymultiplevalues_in_data[] = { }; static bool querymultiplevalues_in_check(struct torture_context *tctx, - struct winreg_QueryMultipleValues *r) + struct winreg_QueryMultipleValues *r) { torture_assert_int_equal(tctx, r->in.num_values, 1, "num values"); torture_assert_str_equal(tctx, r->in.values[0].name->name, "HOMEPATH", @@ -272,7 +272,7 @@ static const uint8_t querymultiplevalues_out_data[] = { }; static bool querymultiplevalues_out_check(struct torture_context *tctx, - struct winreg_QueryMultipleValues *r) + struct winreg_QueryMultipleValues *r) { torture_assert_str_equal(tctx, r->out.values[0].name->name, "HOMEPATH", "name"); @@ -458,7 +458,7 @@ static const uint8_t getkeysecurity_in_data[] = { }; static bool getkeysecurity_in_check(struct torture_context *tctx, - struct winreg_GetKeySecurity *r) + struct winreg_GetKeySecurity *r) { /* FIXME: Handle */ torture_assert_int_equal(tctx, r->in.sec_info, 2, "sec info"); @@ -476,7 +476,7 @@ static const uint8_t getkeysecurity_out_data[] = { }; static bool getkeysecurity_out_check(struct torture_context *tctx, - struct winreg_GetKeySecurity *r) + struct winreg_GetKeySecurity *r) { torture_assert_int_equal(tctx, r->in.sd->size, 20, "sd size"); torture_assert_int_equal(tctx, r->in.sd->len, 20, "sd len"); diff --git a/source4/torture/raw/acls.c b/source4/torture/raw/acls.c index 026384cb8bb..ab112658e2a 100644 --- a/source4/torture/raw/acls.c +++ b/source4/torture/raw/acls.c @@ -1736,7 +1736,7 @@ done: */ bool torture_raw_acls(struct torture_context *tctx, struct smbcli_state *cli) { - BOOL ret = True; + bool ret = true; if (!torture_setup_dir(cli, BASEDIR)) { return false; diff --git a/source4/torture/raw/composite.c b/source4/torture/raw/composite.c index ea5c09c3359..370c1f510b0 100644 --- a/source4/torture/raw/composite.c +++ b/source4/torture/raw/composite.c @@ -87,7 +87,7 @@ static BOOL test_loadfile(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) printf("waiting for completion\n"); while (*count != num_ops) { event_loop_once(cli->transport->socket->event.ctx); - if (lp_parm_bool(-1, "torture", "progress", true)) { + if (lp_parm_bool(NULL, "torture", "progress", true)) { printf("count=%d\r", *count); fflush(stdout); } @@ -152,10 +152,10 @@ static BOOL test_fetchfile(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) return False; } - io2.in.dest_host = lp_parm_string(-1, "torture", "host"); + io2.in.dest_host = lp_parm_string(NULL, "torture", "host"); io2.in.port = 0; - io2.in.called_name = lp_parm_string(-1, "torture", "host"); - io2.in.service = lp_parm_string(-1, "torture", "share"); + io2.in.called_name = lp_parm_string(NULL, "torture", "host"); + io2.in.service = lp_parm_string(NULL, "torture", "share"); io2.in.service_type = "A:"; io2.in.credentials = cmdline_credentials; @@ -177,7 +177,7 @@ static BOOL test_fetchfile(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) while (*count != torture_numops) { event_loop_once(event_ctx); - if (lp_parm_bool(-1, "torture", "progress", true)) { + if (lp_parm_bool(NULL, "torture", "progress", true)) { printf("count=%d\r", *count); fflush(stdout); } @@ -297,7 +297,7 @@ static BOOL test_appendacl(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) printf("waiting for completion\n"); while (*count != num_ops) { event_loop_once(event_ctx); - if (lp_parm_bool(-1, "torture", "progress", true)) { + if (lp_parm_bool(NULL, "torture", "progress", true)) { printf("count=%d\r", *count); fflush(stdout); } @@ -340,10 +340,10 @@ static BOOL test_fsinfo(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) int *count = talloc_zero(mem_ctx, int); BOOL ret = True; - io1.in.dest_host = lp_parm_string(-1, "torture", "host"); + io1.in.dest_host = lp_parm_string(NULL, "torture", "host"); io1.in.port = 0; - io1.in.called_name = lp_parm_string(-1, "torture", "host"); - io1.in.service = lp_parm_string(-1, "torture", "share"); + io1.in.called_name = lp_parm_string(NULL, "torture", "host"); + io1.in.service = lp_parm_string(NULL, "torture", "share"); io1.in.service_type = "A:"; io1.in.credentials = cmdline_credentials; io1.in.workgroup = lp_workgroup(); @@ -364,7 +364,7 @@ static BOOL test_fsinfo(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) while (*count < torture_numops) { event_loop_once(event_ctx); - if (lp_parm_bool(-1, "torture", "progress", true)) { + if (lp_parm_bool(NULL, "torture", "progress", true)) { printf("count=%d\r", *count); fflush(stdout); } diff --git a/source4/torture/raw/context.c b/source4/torture/raw/context.c index 79771a004d7..dacc9958be1 100644 --- a/source4/torture/raw/context.c +++ b/source4/torture/raw/context.c @@ -277,8 +277,8 @@ static BOOL test_tree(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) return False; } - share = lp_parm_string(-1, "torture", "share"); - host = lp_parm_string(-1, "torture", "host"); + share = lp_parm_string(NULL, "torture", "share"); + host = lp_parm_string(NULL, "torture", "host"); printf("create a second tree context on the same session\n"); tree = smbcli_tree_init(cli->session, mem_ctx, False); @@ -385,8 +385,8 @@ static BOOL test_tree_ulogoff(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) return False; } - share = lp_parm_string(-1, "torture", "share"); - host = lp_parm_string(-1, "torture", "host"); + share = lp_parm_string(NULL, "torture", "share"); + host = lp_parm_string(NULL, "torture", "host"); printf("create the first new sessions\n"); session1 = smbcli_session_init(cli->transport, mem_ctx, False); @@ -746,8 +746,8 @@ static BOOL test_pid_2tcon(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) return False; } - share = lp_parm_string(-1, "torture", "share"); - host = lp_parm_string(-1, "torture", "host"); + share = lp_parm_string(NULL, "torture", "share"); + host = lp_parm_string(NULL, "torture", "host"); printf("create a second tree context on the same session\n"); tree = smbcli_tree_init(cli->session, mem_ctx, False); diff --git a/source4/torture/raw/eas.c b/source4/torture/raw/eas.c index 5e805643804..810667134a0 100644 --- a/source4/torture/raw/eas.c +++ b/source4/torture/raw/eas.c @@ -247,10 +247,10 @@ static BOOL test_max_eas(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) printf("TESTING SETFILEINFO MAX. EA_SET\n"); - maxeasize = lp_parm_int(-1, "torture", "maxeasize", 65536); - maxeanames = lp_parm_int(-1, "torture", "maxeanames", 101); - maxeastart = lp_parm_int(-1, "torture", "maxeastart", 1); - maxeadebug = lp_parm_int(-1, "torture", "maxeadebug", 0); + maxeasize = lp_parm_int(NULL, "torture", "maxeasize", 65536); + maxeanames = lp_parm_int(NULL, "torture", "maxeanames", 101); + maxeastart = lp_parm_int(NULL, "torture", "maxeastart", 1); + maxeadebug = lp_parm_int(NULL, "torture", "maxeadebug", 0); /* Do some sanity check on possibly passed parms */ if (maxeasize <= 0) { @@ -447,7 +447,7 @@ done: */ bool torture_raw_eas(struct torture_context *torture, struct smbcli_state *cli) { - BOOL ret = True; + bool ret = true; if (!torture_setup_dir(cli, BASEDIR)) { return False; diff --git a/source4/torture/raw/lock.c b/source4/torture/raw/lock.c index e4ab9d9e4a0..c47f3c79787 100644 --- a/source4/torture/raw/lock.c +++ b/source4/torture/raw/lock.c @@ -599,8 +599,8 @@ static bool test_async(struct torture_context *tctx, session->vuid = setup.out.vuid; printf("create new tree context\n"); - share = lp_parm_string(-1, "torture", "share"); - host = lp_parm_string(-1, "torture", "host"); + share = lp_parm_string(NULL, "torture", "share"); + host = lp_parm_string(NULL, "torture", "host"); tree = smbcli_tree_init(session, tctx, False); tcon.generic.level = RAW_TCON_TCONX; tcon.tconx.in.flags = 0; diff --git a/source4/torture/raw/lockbench.c b/source4/torture/raw/lockbench.c index 6ef33be7598..55cab9e1178 100644 --- a/source4/torture/raw/lockbench.c +++ b/source4/torture/raw/lockbench.c @@ -318,7 +318,7 @@ BOOL torture_bench_lock(struct torture_context *torture) progress = torture_setting_bool(torture, "progress", true); - nprocs = lp_parm_int(-1, "torture", "nprocs", 4); + nprocs = lp_parm_int(NULL, "torture", "nprocs", 4); state = talloc_zero_array(mem_ctx, struct benchlock_state, nprocs); diff --git a/source4/torture/raw/mkdir.c b/source4/torture/raw/mkdir.c index c4d7bc25346..2df2c6c84e8 100644 --- a/source4/torture/raw/mkdir.c +++ b/source4/torture/raw/mkdir.c @@ -130,7 +130,7 @@ static BOOL test_mkdir(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) md.t2mkdir.in.eas[2].value = data_blob_talloc(mem_ctx, "xx1", 3); status = smb_raw_mkdir(cli->tree, &md); - if (lp_parm_bool(-1, "torture", "samba3", False) + if (lp_parm_bool(NULL, "torture", "samba3", false) && NT_STATUS_EQUAL(status, NT_STATUS_EAS_NOT_SUPPORTED)) { d_printf("EAS not supported -- not treating as fatal\n"); } diff --git a/source4/torture/raw/mux.c b/source4/torture/raw/mux.c index b67d756ed95..95ba319eea2 100644 --- a/source4/torture/raw/mux.c +++ b/source4/torture/raw/mux.c @@ -176,7 +176,7 @@ static BOOL test_mux_write(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) io.writex.in.wmode = 0; io.writex.in.remaining = 0; io.writex.in.count = 4; - io.writex.in.data = (void *)&fnum; + io.writex.in.data = (const uint8_t *)&fnum; req = smb_raw_write_send(cli->tree, &io); /* unlock the range */ diff --git a/source4/torture/raw/notify.c b/source4/torture/raw/notify.c index d744a891e5f..b9d1d07b5e3 100644 --- a/source4/torture/raw/notify.c +++ b/source4/torture/raw/notify.c @@ -434,7 +434,6 @@ static BOOL test_notify_mask_change(struct smbcli_state *cli, TALLOC_CTX *mem_ct union smb_open io; int fnum; struct smbcli_request *req1, *req2; - union smb_setfileinfo sfinfo; printf("TESTING CHANGE NOTIFY WITH MASK CHANGE\n"); @@ -712,7 +711,7 @@ static BOOL test_notify_mask(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) NOTIFY_ACTION_MODIFIED, FILE_NOTIFY_CHANGE_ATTRIBUTES, 1); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { printf("Samba3 does not yet support create times " "everywhere\n"); } diff --git a/source4/torture/raw/open.c b/source4/torture/raw/open.c index 104a2056e30..c0a32e00f48 100644 --- a/source4/torture/raw/open.c +++ b/source4/torture/raw/open.c @@ -398,7 +398,7 @@ static BOOL test_openx(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) io.openx.in.file_attrs = FILE_ATTRIBUTE_SYSTEM; status = smb_raw_open(cli->tree, mem_ctx, &io); CHECK_STATUS(status, NT_STATUS_OK); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { CHECK_ALL_INFO(FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_ARCHIVE, attrib & ~(FILE_ATTRIBUTE_NONINDEXED| FILE_ATTRIBUTE_SPARSE)); @@ -569,7 +569,7 @@ static BOOL test_t2open(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) status = smb_raw_open(cli->tree, mem_ctx, &io); if ((io.t2open.in.num_eas != 0) && NT_STATUS_EQUAL(status, NT_STATUS_EAS_NOT_SUPPORTED) - && lp_parm_bool(-1, "torture", "samba3", False)) { + && lp_parm_bool(NULL, "torture", "samba3", false)) { printf("(%s) EAs not supported, not treating as fatal " "in Samba3 test\n", __location__); io.t2open.in.num_eas = 0; @@ -1346,8 +1346,8 @@ static BOOL test_raw_open_multi(void) struct smbcli_state **clients; struct smbcli_request **requests; union smb_open *ios; - const char *host = lp_parm_string(-1, "torture", "host"); - const char *share = lp_parm_string(-1, "torture", "share"); + const char *host = lp_parm_string(NULL, "torture", "host"); + const char *share = lp_parm_string(NULL, "torture", "share"); int i, num_files = 3; struct event_context *ev; int num_ok = 0; diff --git a/source4/torture/raw/pingpong.c b/source4/torture/raw/pingpong.c index 6841253c91e..6d84ff1ae94 100755 --- a/source4/torture/raw/pingpong.c +++ b/source4/torture/raw/pingpong.c @@ -52,10 +52,7 @@ #include "torture/util.h" #include "param/param.h" - - - -void lock_byte(struct smbcli_state *cli, int fd, int offset, int lock_timeout) +static void lock_byte(struct smbcli_state *cli, int fd, int offset, int lock_timeout) { union smb_lock io; struct smb_lock_entry lock; @@ -93,7 +90,7 @@ try_again: } } -void unlock_byte(struct smbcli_state *cli, int fd, int offset) +static void unlock_byte(struct smbcli_state *cli, int fd, int offset) { union smb_lock io; struct smb_lock_entry lock; @@ -120,7 +117,7 @@ void unlock_byte(struct smbcli_state *cli, int fd, int offset) } } -void write_byte(struct smbcli_state *cli, int fd, uint8_t c, int offset) +static void write_byte(struct smbcli_state *cli, int fd, uint8_t c, int offset) { union smb_write io; NTSTATUS status; @@ -140,7 +137,7 @@ void write_byte(struct smbcli_state *cli, int fd, uint8_t c, int offset) } } -void read_byte(struct smbcli_state *cli, int fd, uint8_t *c, int offset) +static void read_byte(struct smbcli_state *cli, int fd, uint8_t *c, int offset) { union smb_read io; NTSTATUS status; @@ -179,7 +176,7 @@ static double end_timer(void) /* ping pong */ -BOOL torture_ping_pong(struct torture_context *torture) +bool torture_ping_pong(struct torture_context *torture) { const char *fn; int num_locks; @@ -194,21 +191,21 @@ BOOL torture_ping_pong(struct torture_context *torture) uint8_t *val; int count, loops; - fn = lp_parm_string(-1, "torture", "filename"); + fn = lp_parm_string(NULL, "torture", "filename"); if (fn == NULL) { DEBUG(0,("You must specify the filename using --option=torture:filename=...\n")); return false; } - num_locks = lp_parm_int(-1, "torture", "num_locks", -1); + num_locks = lp_parm_int(NULL, "torture", "num_locks", -1); if (num_locks == -1) { DEBUG(0,("You must specify num_locks using --option=torture:num_locks=...\n")); return false; } - do_reads = lp_parm_bool(-1, "torture", "read", False); - do_writes = lp_parm_bool(-1, "torture", "write", False); - lock_timeout = lp_parm_int(-1, "torture", "lock_timeout", 100000); + do_reads = lp_parm_bool(NULL, "torture", "read", false); + do_writes = lp_parm_bool(NULL, "torture", "write", false); + lock_timeout = lp_parm_int(NULL, "torture", "lock_timeout", 100000); if (!torture_open_connection(&cli, 0)) { DEBUG(0,("Could not open connection\n")); diff --git a/source4/torture/raw/qfsinfo.c b/source4/torture/raw/qfsinfo.c index dc09e55b639..05e6f783241 100644 --- a/source4/torture/raw/qfsinfo.c +++ b/source4/torture/raw/qfsinfo.c @@ -121,7 +121,7 @@ static union smb_fsinfo *find(const char *name) quiescent, which is sometimes hard to achieve */ bool torture_raw_qfsinfo(struct torture_context *torture, - struct smbcli_state *cli) + struct smbcli_state *cli) { int i; BOOL ret = True; diff --git a/source4/torture/raw/read.c b/source4/torture/raw/read.c index b00b377c7f8..61bf027ae8a 100644 --- a/source4/torture/raw/read.c +++ b/source4/torture/raw/read.c @@ -482,7 +482,7 @@ static bool test_readx(struct torture_context *tctx, struct smbcli_state *cli) CHECK_STATUS(status, NT_STATUS_OK); CHECK_VALUE(io.readx.out.remaining, 0xFFFF); CHECK_VALUE(io.readx.out.compaction_mode, 0); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { printf("SAMBA3: large read extension\n"); CHECK_VALUE(io.readx.out.nread, 80000); } else { @@ -526,7 +526,7 @@ static bool test_readx(struct torture_context *tctx, struct smbcli_state *cli) io.readx.in.maxcnt = 0x10000; status = smb_raw_read(cli->tree, &io); CHECK_STATUS(status, NT_STATUS_OK); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { printf("SAMBA3: large read extension\n"); CHECK_VALUE(io.readx.out.nread, 0x10000); } else { @@ -536,7 +536,7 @@ static bool test_readx(struct torture_context *tctx, struct smbcli_state *cli) io.readx.in.maxcnt = 0x10001; status = smb_raw_read(cli->tree, &io); CHECK_STATUS(status, NT_STATUS_OK); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { printf("SAMBA3: large read extension\n"); CHECK_VALUE(io.readx.out.nread, 0x10001); } else { diff --git a/source4/torture/raw/streams.c b/source4/torture/raw/streams.c index c51c6ea2dfb..81181e49ab5 100644 --- a/source4/torture/raw/streams.c +++ b/source4/torture/raw/streams.c @@ -214,9 +214,9 @@ done: basic testing of streams calls */ bool torture_raw_streams(struct torture_context *torture, - struct smbcli_state *cli) + struct smbcli_state *cli) { - BOOL ret = True; + bool ret = true; if (!torture_setup_dir(cli, BASEDIR)) { return False; diff --git a/source4/torture/raw/unlink.c b/source4/torture/raw/unlink.c index 59e1aeb27c7..88f9a71aaf0 100644 --- a/source4/torture/raw/unlink.c +++ b/source4/torture/raw/unlink.c @@ -129,7 +129,7 @@ static bool test_unlink(struct torture_context *tctx, struct smbcli_state *cli) io.unlink.in.attrib = FILE_ATTRIBUTE_DIRECTORY; status = smb_raw_unlink(cli->tree, &io); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { /* * In Samba3 we gave up upon getting the error codes in * wildcard unlink correct. Trying gentest showed that this is @@ -157,7 +157,7 @@ static bool test_unlink(struct torture_context *tctx, struct smbcli_state *cli) io.unlink.in.pattern = BASEDIR "\\t*"; io.unlink.in.attrib = FILE_ATTRIBUTE_DIRECTORY; status = smb_raw_unlink(cli->tree, &io); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { CHECK_STATUS(status, NT_STATUS_OBJECT_NAME_INVALID); } else { @@ -169,7 +169,7 @@ static bool test_unlink(struct torture_context *tctx, struct smbcli_state *cli) io.unlink.in.pattern = BASEDIR "\\*.dat"; io.unlink.in.attrib = FILE_ATTRIBUTE_DIRECTORY; status = smb_raw_unlink(cli->tree, &io); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { CHECK_STATUS(status, NT_STATUS_OBJECT_NAME_INVALID); } else { @@ -179,7 +179,7 @@ static bool test_unlink(struct torture_context *tctx, struct smbcli_state *cli) io.unlink.in.pattern = BASEDIR "\\*.tx?"; io.unlink.in.attrib = 0; status = smb_raw_unlink(cli->tree, &io); - if (lp_parm_bool(-1, "torture", "samba3", False)) { + if (lp_parm_bool(NULL, "torture", "samba3", false)) { CHECK_STATUS(status, NT_STATUS_NO_SUCH_FILE); } else { @@ -282,7 +282,7 @@ static bool test_delete_on_close(struct torture_context *tctx, CHECK_STATUS(status, NT_STATUS_OBJECT_NAME_NOT_FOUND); - if (!lp_parm_bool(-1, "torture", "samba3", False)) { + if (!lp_parm_bool(NULL, "torture", "samba3", false)) { /* * Known deficiency, also skipped in base-delete. diff --git a/source4/torture/rpc/autoidl.c b/source4/torture/rpc/autoidl.c index 76d838517cd..451b8ab1201 100644 --- a/source4/torture/rpc/autoidl.c +++ b/source4/torture/rpc/autoidl.c @@ -95,8 +95,7 @@ static void reopen(TALLOC_CTX *mem_ctx, talloc_free(*p); - status = torture_rpc_connection(mem_ctx, - p, iface); + status = torture_rpc_connection(mem_ctx, p, iface); if (!NT_STATUS_IS_OK(status)) { printf("Failed to reopen '%s' - %s\n", iface->name, nt_errstr(status)); exit(1); diff --git a/source4/torture/rpc/bench.c b/source4/torture/rpc/bench.c index be00e0b7a6a..7f71723e6dd 100644 --- a/source4/torture/rpc/bench.c +++ b/source4/torture/rpc/bench.c @@ -72,7 +72,7 @@ static BOOL bench_NetShareEnumAll(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx) { struct timeval tv = timeval_current(); BOOL ret = True; - int timelimit = lp_parm_int(-1, "torture", "timelimit", 10); + int timelimit = lp_parm_int(NULL, "torture", "timelimit", 10); int count=0; printf("Running for %d seconds\n", timelimit); @@ -82,7 +82,7 @@ static BOOL bench_NetShareEnumAll(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx) talloc_free(tmp_ctx); count++; if (count % 50 == 0) { - if (lp_parm_bool(-1, "torture", "progress", true)) { + if (lp_parm_bool(NULL, "torture", "progress", true)) { printf("%.1f queries per second \r", count / timeval_elapsed(&tv)); } diff --git a/source4/torture/rpc/countcalls.c b/source4/torture/rpc/countcalls.c index c1fdc069cb0..0d3df0ffb34 100644 --- a/source4/torture/rpc/countcalls.c +++ b/source4/torture/rpc/countcalls.c @@ -111,7 +111,7 @@ BOOL torture_rpc_countcalls(struct torture_context *torture) if (!mem_ctx) { return False; } - iface_name = lp_parm_string(-1, "countcalls", "interface"); + iface_name = lp_parm_string(NULL, "countcalls", "interface"); if (iface_name != NULL) { iface = ndr_table_by_name(iface_name); if (!iface) { diff --git a/source4/torture/rpc/drsuapi.c b/source4/torture/rpc/drsuapi.c index c3ec54cbcdb..3f59f1d56d0 100644 --- a/source4/torture/rpc/drsuapi.c +++ b/source4/torture/rpc/drsuapi.c @@ -538,7 +538,7 @@ static bool test_DsGetNCChanges(struct torture_context *tctx, r.in.req.req5.highwatermark.highest_usn = 0; r.in.req.req5.uptodateness_vector = NULL; r.in.req.req5.replica_flags = 0; - if (lp_parm_bool(-1, "drsuapi", "compression", false)) { + if (lp_parm_bool(NULL, "drsuapi", "compression", false)) { r.in.req.req5.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_COMPRESS_CHANGES; } r.in.req.req5.max_object_count = 0; @@ -560,10 +560,10 @@ static bool test_DsGetNCChanges(struct torture_context *tctx, r.in.req.req8.highwatermark.highest_usn = 0; r.in.req.req8.uptodateness_vector = NULL; r.in.req.req8.replica_flags = 0; - if (lp_parm_bool(-1, "drsuapi", "compression", false)) { + if (lp_parm_bool(NULL, "drsuapi", "compression", false)) { r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_COMPRESS_CHANGES; } - if (lp_parm_bool(-1, "drsuapi", "neighbour_writeable",true)) { + if (lp_parm_bool(NULL, "drsuapi", "neighbour_writeable",true)) { r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_WRITEABLE; } r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_SYNC_ON_STARTUP diff --git a/source4/torture/rpc/dssync.c b/source4/torture/rpc/dssync.c index bf3e59c380b..5ea578e0416 100644 --- a/source4/torture/rpc/dssync.c +++ b/source4/torture/rpc/dssync.c @@ -84,7 +84,7 @@ static struct DsSyncTest *test_create_context(TALLOC_CTX *mem_ctx) struct DsSyncTest *ctx; struct drsuapi_DsBindInfo28 *our_bind_info28; struct drsuapi_DsBindInfoCtr *our_bind_info_ctr; - const char *binding = lp_parm_string(-1, "torture", "binding"); + const char *binding = lp_parm_string(NULL, "torture", "binding"); ctx = talloc_zero(mem_ctx, struct DsSyncTest); if (!ctx) return NULL; @@ -149,7 +149,7 @@ static struct DsSyncTest *test_create_context(TALLOC_CTX *mem_ctx) our_bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3; our_bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7; our_bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT; - if (lp_parm_bool(-1,"dssync","xpress",False)) { + if (lp_parm_bool(NULL, "dssync", "xpress", false)) { our_bind_info28->supported_extensions |= DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS; } our_bind_info28->site_guid = GUID_zero(); @@ -420,11 +420,11 @@ static void test_analyse_objects(struct DsSyncTest *ctx, static uint32_t object_id; const char *save_values_dir; - if (!lp_parm_bool(-1,"dssync","print_pwd_blobs", false)) { + if (!lp_parm_bool(NULL,"dssync","print_pwd_blobs", false)) { return; } - save_values_dir = lp_parm_string(-1,"dssync","save_pwd_blobs_dir"); + save_values_dir = lp_parm_string(NULL, "dssync", "save_pwd_blobs_dir"); for (; cur; cur = cur->next_object) { const char *dn; @@ -560,17 +560,17 @@ static BOOL test_FetchData(struct DsSyncTest *ctx) ZERO_STRUCT(null_guid); ZERO_STRUCT(null_sid); - partition = lp_parm_string(-1, "dssync", "partition"); + partition = lp_parm_string(NULL, "dssync", "partition"); if (partition == NULL) { partition = ctx->domain_dn; printf("dssync:partition not specified, defaulting to %s.\n", ctx->domain_dn); } - highest_usn = lp_parm_int(-1, "dssync", "highest_usn", 0); + highest_usn = lp_parm_int(NULL, "dssync", "highest_usn", 0); - array[0].level = lp_parm_int(-1, "dssync", "get_nc_changes_level", array[0].level); + array[0].level = lp_parm_int(NULL, "dssync", "get_nc_changes_level", array[0].level); - if (lp_parm_bool(-1,"dssync","print_pwd_blobs",False)) { + if (lp_parm_bool(NULL, "dssync", "print_pwd_blobs", false)) { const struct samr_Password *nthash; nthash = cli_credentials_get_nt_hash(ctx->new_dc.credentials, ctx); if (nthash) { @@ -606,10 +606,10 @@ static BOOL test_FetchData(struct DsSyncTest *ctx) r.in.req.req5.highwatermark.highest_usn = highest_usn; r.in.req.req5.uptodateness_vector = NULL; r.in.req.req5.replica_flags = 0; - if (lp_parm_bool(-1,"dssync","compression",False)) { + if (lp_parm_bool(NULL, "dssync", "compression", false)) { r.in.req.req5.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_COMPRESS_CHANGES; } - if (lp_parm_bool(-1,"dssync","neighbour_writeable",True)) { + if (lp_parm_bool(NULL, "dssync", "neighbour_writeable", true)) { r.in.req.req5.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_WRITEABLE; } r.in.req.req5.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_SYNC_ON_STARTUP @@ -637,10 +637,10 @@ static BOOL test_FetchData(struct DsSyncTest *ctx) r.in.req.req8.highwatermark.highest_usn = highest_usn; r.in.req.req8.uptodateness_vector = NULL; r.in.req.req8.replica_flags = 0; - if (lp_parm_bool(-1,"dssync","compression",False)) { + if (lp_parm_bool(NULL, "dssync", "compression", false)) { r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_COMPRESS_CHANGES; } - if (lp_parm_bool(-1,"dssync","neighbour_writeable",True)) { + if (lp_parm_bool(NULL, "dssync", "neighbour_writeable", true)) { r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_WRITEABLE; } r.in.req.req8.replica_flags |= DRSUAPI_DS_REPLICA_NEIGHBOUR_SYNC_ON_STARTUP @@ -760,8 +760,8 @@ static BOOL test_FetchNT4Data(struct DsSyncTest *ctx) r.in.bind_handle = &ctx->new_dc.drsuapi.bind_handle; r.in.level = 1; - r.in.req.req1.unknown1 = lp_parm_int(-1, "dssync", "nt4-1", 3); - r.in.req.req1.unknown2 = lp_parm_int(-1, "dssync", "nt4-2", 0x00004000); + r.in.req.req1.unknown1 = lp_parm_int(NULL, "dssync", "nt4-1", 3); + r.in.req.req1.unknown2 = lp_parm_int(NULL, "dssync", "nt4-2", 0x00004000); while (1) { r.in.req.req1.length = cookie.length; @@ -800,9 +800,9 @@ static BOOL test_FetchNT4Data(struct DsSyncTest *ctx) return ret; } -BOOL torture_rpc_dssync(struct torture_context *torture) +bool torture_rpc_dssync(struct torture_context *torture) { - BOOL ret = True; + bool ret = true; TALLOC_CTX *mem_ctx; struct DsSyncTest *ctx; diff --git a/source4/torture/rpc/echo.c b/source4/torture/rpc/echo.c index 52f6d76d0e6..c873cdf0aee 100644 --- a/source4/torture/rpc/echo.c +++ b/source4/torture/rpc/echo.c @@ -78,8 +78,8 @@ static bool test_echodata(struct torture_context *tctx, len = 1 + (random() % 5000); } - data_in = talloc_size(tctx, len); - data_out = talloc_size(tctx, len); + data_in = talloc_array(tctx, uint8_t, len); + data_out = talloc_array(tctx, uint8_t, len); for (i=0;iasync.private_data; + int *counter = (int *)req->async.private_data; if (NT_STATUS_IS_OK(req->status)) { (*counter)++; } @@ -1278,7 +1278,7 @@ static bool test_GetDomainInfo_async(struct torture_context *tctx, for (i=0;iasync.callback = async_callback; diff --git a/source4/torture/rpc/samba3rpc.c b/source4/torture/rpc/samba3rpc.c index 73bb12de87d..e6f54037bce 100644 --- a/source4/torture/rpc/samba3rpc.c +++ b/source4/torture/rpc/samba3rpc.c @@ -1230,7 +1230,7 @@ static BOOL test_join3(TALLOC_CTX *mem_ctx, struct cli_credentials *wks_creds; status = smbcli_full_connection(mem_ctx, &cli, - lp_parm_string(-1, "torture", "host"), + lp_parm_string(NULL, "torture", "host"), "IPC$", NULL, smb_creds, NULL); if (!NT_STATUS_IS_OK(status)) { d_printf("smbcli_full_connection failed: %s\n", diff --git a/source4/torture/rpc/samlogon.c b/source4/torture/rpc/samlogon.c index b149af18597..92c4da6321a 100644 --- a/source4/torture/rpc/samlogon.c +++ b/source4/torture/rpc/samlogon.c @@ -1573,7 +1573,7 @@ BOOL torture_rpc_samlogon(struct torture_context *torture) u.info21.fields_present = SAMR_FIELD_WORKSTATIONS | SAMR_FIELD_LOGON_HOURS; u.info21.workstations.string = TEST_MACHINE_NAME; u.info21.logon_hours.units_per_week = 168; - u.info21.logon_hours.bits = talloc_zero_size(mem_ctx, 168); + u.info21.logon_hours.bits = talloc_zero_array(mem_ctx, uint8_t, 168); status = dcerpc_samr_SetUserInfo(torture_join_samr_pipe(user_ctx_wrong_time), mem_ctx, &s); if (!NT_STATUS_IS_OK(status)) { diff --git a/source4/torture/rpc/samr.c b/source4/torture/rpc/samr.c index 757142003ab..2a70a5b71f1 100644 --- a/source4/torture/rpc/samr.c +++ b/source4/torture/rpc/samr.c @@ -84,7 +84,7 @@ static BOOL test_Shutdown(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, NTSTATUS status; struct samr_Shutdown r; - if (!lp_parm_bool(-1, "torture", "dangerous", False)) { + if (!lp_parm_bool(NULL, "torture", "dangerous", false)) { printf("samr_Shutdown disabled - enable dangerous tests to use\n"); return True; } @@ -110,7 +110,7 @@ static BOOL test_SetDsrmPassword(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_String string; struct samr_Password hash; - if (!lp_parm_bool(-1, "torture", "dangerous", False)) { + if (!lp_parm_bool(NULL, "torture", "dangerous", false)) { printf("samr_SetDsrmPassword disabled - enable dangerous tests to use\n"); return True; } @@ -159,7 +159,7 @@ static BOOL test_QuerySecurity(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, s.in.sec_info = 7; s.in.sdbuf = r.out.sdbuf; - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { printf("skipping SetSecurity test against Samba4\n"); return True; } @@ -415,7 +415,7 @@ static BOOL test_SetUserInfo(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, TEST_USERINFO_INT(21, logon_hours.bits[3], 21, logon_hours.bits[3], 4, SAMR_FIELD_LOGON_HOURS); - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { printf("skipping Set Account Flag tests against Samba4\n"); return ret; } @@ -2121,7 +2121,7 @@ static BOOL test_alias_ops(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, ret = False; } - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { printf("skipping MultipleMembers Alias tests against Samba4\n"); return ret; } @@ -3180,7 +3180,7 @@ static BOOL test_EnumDomainUsers_async(struct dcerpc_pipe *p, TALLOC_CTX *mem_ct #define ASYNC_COUNT 100 struct rpc_request *req[ASYNC_COUNT]; - if (!lp_parm_bool(-1, "torture", "dangerous", False)) { + if (!lp_parm_bool(NULL, "torture", "dangerous", false)) { printf("samr async test disabled - enable dangerous tests to use\n"); return True; } @@ -4067,7 +4067,7 @@ static BOOL test_AddGroupMember(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, return False; } - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { printf("skipping SetMemberAttributesOfGroup test against Samba4\n"); } else { /* this one is quite strange. I am using random inputs in the @@ -4256,7 +4256,7 @@ static BOOL test_OpenDomain(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, ret &= test_QueryDisplayInfo3(p, mem_ctx, &domain_handle); ret &= test_QueryDisplayInfo_continue(p, mem_ctx, &domain_handle); - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { printf("skipping GetDisplayEnumerationIndex test against Samba4\n"); } else { ret &= test_GetDisplayEnumerationIndex(p, mem_ctx, &domain_handle); diff --git a/source4/torture/rpc/samsync.c b/source4/torture/rpc/samsync.c index baf4edca987..013a6db0bb3 100644 --- a/source4/torture/rpc/samsync.c +++ b/source4/torture/rpc/samsync.c @@ -68,7 +68,7 @@ static NTSTATUS test_SamLogon(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, sizeof(ninfo.challenge)); if (nt_hash) { ninfo.nt.length = 24; - ninfo.nt.data = talloc_size(mem_ctx, 24); + ninfo.nt.data = talloc_array(mem_ctx, uint8_t, 24); SMBOWFencrypt(nt_hash->hash, ninfo.challenge, ninfo.nt.data); } else { ninfo.nt.length = 0; @@ -77,7 +77,7 @@ static NTSTATUS test_SamLogon(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, if (lm_hash) { ninfo.lm.length = 24; - ninfo.lm.data = talloc_size(mem_ctx, 24); + ninfo.lm.data = talloc_array(mem_ctx, uint8_t, 24); SMBOWFencrypt(lm_hash->hash, ninfo.challenge, ninfo.lm.data); } else { ninfo.lm.length = 0; diff --git a/source4/torture/rpc/schannel.c b/source4/torture/rpc/schannel.c index 2494fbeffff..7d963be1bb7 100644 --- a/source4/torture/rpc/schannel.c +++ b/source4/torture/rpc/schannel.c @@ -233,7 +233,7 @@ static bool test_schannel(struct torture_context *tctx, { struct test_join *join_ctx; NTSTATUS status; - const char *binding = lp_parm_string(-1, "torture", "binding"); + const char *binding = lp_parm_string(NULL, "torture", "binding"); struct dcerpc_binding *b; struct dcerpc_pipe *p = NULL; struct dcerpc_pipe *p_netlogon = NULL; @@ -435,7 +435,7 @@ bool torture_rpc_schannel2(struct torture_context *torture) torture_assert(torture, join_ctx != NULL, "Failed to join domain with acct_flags=ACB_WSTRUST"); - credentials2 = talloc_memdup(torture, credentials1, sizeof(*credentials1)); + credentials2 = (struct cli_credentials *)talloc_memdup(torture, credentials1, sizeof(*credentials1)); credentials1->netlogon_creds = NULL; credentials2->netlogon_creds = NULL; diff --git a/source4/torture/rpc/session_key.c b/source4/torture/rpc/session_key.c index 0e1c2666f86..a976d2fec2a 100644 --- a/source4/torture/rpc/session_key.c +++ b/source4/torture/rpc/session_key.c @@ -145,7 +145,8 @@ static bool test_secrets(struct torture_context *torture, const void *_data) struct dcerpc_pipe *p; struct policy_handle *handle; struct dcerpc_binding *binding; - const struct secret_settings *settings = _data; + const struct secret_settings *settings = + (const struct secret_settings *)_data; lp_set_cmdline("ntlmssp client:keyexchange", settings->keyexchange?"True":"False"); lp_set_cmdline("ntlmssp_client:ntlm2", settings->ntlm2?"True":"False"); diff --git a/source4/torture/rpc/svcctl.c b/source4/torture/rpc/svcctl.c index 2f2b4ec485a..c9006baaf54 100644 --- a/source4/torture/rpc/svcctl.c +++ b/source4/torture/rpc/svcctl.c @@ -80,7 +80,7 @@ static bool test_EnumServicesStatus(struct torture_context *tctx, struct dcerpc_ if (W_ERROR_EQUAL(r.out.result, WERR_MORE_DATA)) { r.in.buf_size = *r.out.bytes_needed; - r.out.service = talloc_size(tctx, *r.out.bytes_needed); + r.out.service = talloc_array(tctx, uint8_t, *r.out.bytes_needed); status = dcerpc_svcctl_EnumServicesStatusW(p, tctx, &r); diff --git a/source4/torture/rpc/testjoin.c b/source4/torture/rpc/testjoin.c index e20699cc04b..f32d6832a30 100644 --- a/source4/torture/rpc/testjoin.c +++ b/source4/torture/rpc/testjoin.c @@ -126,7 +126,7 @@ struct test_join *torture_create_testuser(struct torture_context *torture, int policy_min_pw_len = 0; struct test_join *join; char *random_pw; - const char *dc_binding = lp_parm_string(-1, "torture", "dc_binding"); + const char *dc_binding = lp_parm_string(NULL, "torture", "dc_binding"); join = talloc(NULL, struct test_join); if (join == NULL) { @@ -327,9 +327,9 @@ _PUBLIC_ struct test_join *torture_join_domain(const char *machine_name, tj->libnet_r = libnet_r; libnet_ctx->cred = cmdline_credentials; - libnet_r->in.binding = lp_parm_string(-1, "torture", "binding"); + libnet_r->in.binding = lp_parm_string(NULL, "torture", "binding"); if (!libnet_r->in.binding) { - libnet_r->in.binding = talloc_asprintf(libnet_r, "ncacn_np:%s", lp_parm_string(-1, "torture", "host")); + libnet_r->in.binding = talloc_asprintf(libnet_r, "ncacn_np:%s", lp_parm_string(NULL, "torture", "host")); } libnet_r->in.level = LIBNET_JOINDOMAIN_SPECIFIED; libnet_r->in.netbios_name = machine_name; diff --git a/source4/torture/smb2/connect.c b/source4/torture/smb2/connect.c index fdfc4378ab6..c9a5732d2a2 100644 --- a/source4/torture/smb2/connect.c +++ b/source4/torture/smb2/connect.c @@ -74,9 +74,9 @@ static NTSTATUS torture_smb2_write(struct smb2_tree *tree, struct smb2_handle ha DATA_BLOB data; int i; - if (lp_parm_bool(-1, "torture", "dangerous", False)) { + if (lp_parm_bool(NULL, "torture", "dangerous", false)) { data = data_blob_talloc(tree, NULL, 160000); - } else if (lp_parm_bool(-1, "torture", "samba4", False)) { + } else if (lp_parm_bool(NULL, "torture", "samba4", false)) { data = data_blob_talloc(tree, NULL, UINT16_MAX); } else { data = data_blob_talloc(tree, NULL, 120000); diff --git a/source4/torture/smb2/getinfo.c b/source4/torture/smb2/getinfo.c index c5182fb553c..86ca56ba55e 100644 --- a/source4/torture/smb2/getinfo.c +++ b/source4/torture/smb2/getinfo.c @@ -105,7 +105,7 @@ static BOOL torture_smb2_fileinfo(struct smb2_tree *tree) file_levels[i].dinfo.query_secdesc.in.secinfo_flags = 0x7; } if (file_levels[i].level == RAW_FILEINFO_SMB2_ALL_EAS) { - if (lp_parm_bool(-1, "torture", "samba4", False)) { + if (lp_parm_bool(NULL, "torture", "samba4", false)) { continue; } file_levels[i].finfo.all_eas.in.continue_flags = diff --git a/source4/torture/smb2/util.c b/source4/torture/smb2/util.c index caa3a5fd52a..8c55813c8c2 100644 --- a/source4/torture/smb2/util.c +++ b/source4/torture/smb2/util.c @@ -27,6 +27,7 @@ #include "system/time.h" #include "librpc/gen_ndr/ndr_security.h" #include "param/param.h" +#include "torture/smb2/proto.h" /* @@ -302,8 +303,8 @@ void torture_smb2_all_info(struct smb2_tree *tree, struct smb2_handle handle) BOOL torture_smb2_connection(TALLOC_CTX *mem_ctx, struct smb2_tree **tree) { NTSTATUS status; - const char *host = lp_parm_string(-1, "torture", "host"); - const char *share = lp_parm_string(-1, "torture", "share"); + const char *host = lp_parm_string(NULL, "torture", "host"); + const char *share = lp_parm_string(NULL, "torture", "share"); struct cli_credentials *credentials = cmdline_credentials; status = smb2_connect(mem_ctx, host, share, credentials, tree, diff --git a/source4/torture/ui.c b/source4/torture/ui.c index 6a1c2a31f35..bb288032166 100644 --- a/source4/torture/ui.c +++ b/source4/torture/ui.c @@ -343,25 +343,25 @@ BOOL torture_run_test(struct torture_context *context, int torture_setting_int(struct torture_context *test, const char *name, int default_value) { - return lp_parm_int(-1, "torture", name, default_value); + return lp_parm_int(NULL, "torture", name, default_value); } double torture_setting_double(struct torture_context *test, const char *name, double default_value) { - return lp_parm_double(-1, "torture", name, default_value); + return lp_parm_double(NULL, "torture", name, default_value); } bool torture_setting_bool(struct torture_context *test, const char *name, bool default_value) { - return lp_parm_bool(-1, "torture", name, default_value); + return lp_parm_bool(NULL, "torture", name, default_value); } const char *torture_setting_string(struct torture_context *test, const char *name, const char *default_value) { - const char *ret = lp_parm_string(-1, "torture", name); + const char *ret = lp_parm_string(NULL, "torture", name); if (ret == NULL) return default_value; diff --git a/source4/torture/unix/whoami.c b/source4/torture/unix/whoami.c index 80431f5ac55..aea1ee19e0b 100644 --- a/source4/torture/unix/whoami.c +++ b/source4/torture/unix/whoami.c @@ -72,8 +72,8 @@ static struct smbcli_state *connect_to_server(void *mem_ctx, NTSTATUS status; struct smbcli_state *cli; - const char *host = lp_parm_string(-1, "torture", "host"); - const char *share = lp_parm_string(-1, "torture", "share"); + const char *host = lp_parm_string(NULL, "torture", "host"); + const char *share = lp_parm_string(NULL, "torture", "share"); status = smbcli_full_connection(mem_ctx, &cli, host, share, NULL, diff --git a/source4/torture/util_smb.c b/source4/torture/util_smb.c index 01826dccfc5..8b944e33a09 100644 --- a/source4/torture/util_smb.c +++ b/source4/torture/util_smb.c @@ -479,10 +479,10 @@ _PUBLIC_ bool torture_open_connection_share(TALLOC_CTX *mem_ctx, return False; } - (*c)->transport->options.use_oplocks = lp_parm_bool(-1, "torture", - "use_oplocks", False); - (*c)->transport->options.use_level2_oplocks = lp_parm_bool(-1, "torture", - "use_level2_oplocks", False); + (*c)->transport->options.use_oplocks = lp_parm_bool(NULL, "torture", + "use_oplocks", false); + (*c)->transport->options.use_level2_oplocks = lp_parm_bool(NULL, "torture", + "use_level2_oplocks", false); return True; } @@ -495,10 +495,10 @@ _PUBLIC_ bool torture_get_conn_index(int conn_index, int num_unc_names = 0; const char *p; - (*host) = talloc_strdup(mem_ctx, lp_parm_string(-1, "torture", "host")); - (*share) = talloc_strdup(mem_ctx, lp_parm_string(-1, "torture", "share")); + (*host) = talloc_strdup(mem_ctx, lp_parm_string(NULL, "torture", "host")); + (*share) = talloc_strdup(mem_ctx, lp_parm_string(NULL, "torture", "share")); - p = lp_parm_string(-1, "torture", "unclist"); + p = lp_parm_string(NULL, "torture", "unclist"); if (!p) { return True; } diff --git a/source4/utils/testparm.c b/source4/utils/testparm.c index e0ebe48d638..08d4ecb1a7e 100644 --- a/source4/utils/testparm.c +++ b/source4/utils/testparm.c @@ -151,8 +151,9 @@ static int do_global_checks(void) ret = do_global_checks(); for (s=0;s 12) { + struct service *service = lp_servicebynum(s); + if (service != NULL) + if (strlen(lp_servicename(lp_servicebynum(s))) > 12) { fprintf(stderr, "WARNING: You have some share names that are longer than 12 characters.\n" ); fprintf(stderr, "These may not be accessible to some older clients.\n" ); fprintf(stderr, "(Eg. Windows9x, WindowsMe, and not listed in smbclient in Samba 3.0.)\n" ); @@ -161,9 +162,10 @@ static int do_global_checks(void) } for (s=0;sdata = NULL; s->te = NULL; s->edata = edata; - s->lifetime = lp_parm_int(-1, "web", "sessiontimeout", 900); + s->lifetime = lp_parm_int(NULL, "web", "sessiontimeout", 900); DLIST_ADD(edata->sessions, s); talloc_set_destructor(s, session_destructor); if (!generated_key) { diff --git a/source4/web_server/web_server.c b/source4/web_server/web_server.c index efad8b6512c..221c792f14f 100644 --- a/source4/web_server/web_server.c +++ b/source4/web_server/web_server.c @@ -85,7 +85,7 @@ static void websrv_recv(struct stream_connection *conn, uint16_t flags) /* parse any lines that are available */ b = web->input.partial; while (!web->input.end_of_headers && - (p=memchr(b.data, '\n', b.length))) { + (p=(uint8_t *)memchr(b.data, '\n', b.length))) { const char *line = (const char *)b.data; *p = 0; if (p != b.data && p[-1] == '\r') { diff --git a/source4/wrepl_server/wrepl_server.c b/source4/wrepl_server/wrepl_server.c index 6ac7fed0ccf..503034cac1b 100644 --- a/source4/wrepl_server/wrepl_server.c +++ b/source4/wrepl_server/wrepl_server.c @@ -82,26 +82,26 @@ static NTSTATUS wreplsrv_open_winsdb(struct wreplsrv_service *service) } /* the default renew interval is 6 days */ - service->config.renew_interval = lp_parm_int(-1,"wreplsrv","renew_interval", 6*24*60*60); + service->config.renew_interval = lp_parm_int(NULL,"wreplsrv","renew_interval", 6*24*60*60); /* the default tombstone (extinction) interval is 6 days */ - service->config.tombstone_interval= lp_parm_int(-1,"wreplsrv","tombstone_interval", 6*24*60*60); + service->config.tombstone_interval= lp_parm_int(NULL,"wreplsrv","tombstone_interval", 6*24*60*60); /* the default tombstone (extinction) timeout is 1 day */ - service->config.tombstone_timeout = lp_parm_int(-1,"wreplsrv","tombstone_timeout", 1*24*60*60); + service->config.tombstone_timeout = lp_parm_int(NULL,"wreplsrv","tombstone_timeout", 1*24*60*60); /* the default tombstone extra timeout is 3 days */ - service->config.tombstone_extra_timeout = lp_parm_int(-1,"wreplsrv","tombstone_extra_timeout", 3*24*60*60); + service->config.tombstone_extra_timeout = lp_parm_int(NULL,"wreplsrv","tombstone_extra_timeout", 3*24*60*60); /* the default verify interval is 24 days */ - service->config.verify_interval = lp_parm_int(-1,"wreplsrv","verify_interval", 24*24*60*60); + service->config.verify_interval = lp_parm_int(NULL,"wreplsrv","verify_interval", 24*24*60*60); /* the default scavenging interval is 'renew_interval/2' */ - service->config.scavenging_interval=lp_parm_int(-1,"wreplsrv","scavenging_interval", + service->config.scavenging_interval=lp_parm_int(NULL,"wreplsrv","scavenging_interval", service->config.renew_interval/2); /* the maximun interval to the next periodic processing event */ - service->config.periodic_interval = lp_parm_int(-1,"wreplsrv","periodic_interval", 15); + service->config.periodic_interval = lp_parm_int(NULL,"wreplsrv","periodic_interval", 15); return NT_STATUS_OK; } -- 2.34.1