From: Andrew Tridgell Date: Tue, 2 Nov 2004 06:42:15 +0000 (+0000) Subject: r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ioctl.h) X-Git-Tag: samba-4.0.0alpha6~801^3~12771 X-Git-Url: http://git.samba.org/samba.git/?p=bbaumbach%2Fsamba-autobuild%2F.git;a=commitdiff_plain;h=3643fb11092e28a9538ef32cedce8ff21ad86a28 r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ioctl.h) (This used to be commit b97e395c814762024336c1cf4d7c25be8da5813a) --- diff --git a/source4/auth/auth.c b/source4/auth/auth.c index 7fe446baf95..ae8b29e87d2 100644 --- a/source4/auth/auth.c +++ b/source4/auth/auth.c @@ -19,6 +19,7 @@ */ #include "includes.h" +#include "dlinklist.h" #include "auth/auth.h" #undef DBGC_CLASS diff --git a/source4/client/client.c b/source4/client/client.c index 14d31628c70..e80d4ebef46 100644 --- a/source4/client/client.c +++ b/source4/client/client.c @@ -27,6 +27,7 @@ #include "libcli/raw/libcliraw.h" #include "system/time.h" #include "system/dir.h" +#include "dlinklist.h" #ifndef REGISTER #define REGISTER 0 diff --git a/source4/include/asn_1.h b/source4/include/asn_1.h index c10b03164ae..4243f6d31f5 100644 --- a/source4/include/asn_1.h +++ b/source4/include/asn_1.h @@ -27,13 +27,13 @@ struct nesting { struct nesting *next; }; -typedef struct asn1_data { +struct asn1_data { uint8_t *data; size_t length; off_t ofs; struct nesting *nesting; BOOL has_error; -} ASN1_DATA; +}; #define ASN1_APPLICATION(x) ((x)+0x60) #define ASN1_APPLICATION_SIMPLE(x) ((x)+0x40) diff --git a/source4/include/includes.h b/source4/include/includes.h index 58f8e80803f..0721ef4879f 100644 --- a/source4/include/includes.h +++ b/source4/include/includes.h @@ -109,18 +109,6 @@ #define VOLATILE #endif -/* - * Define additional missing types - */ -#ifndef HAVE_SIG_ATOMIC_T_TYPE -typedef int sig_atomic_t; -#endif - -#ifndef HAVE_SOCKLEN_T_TYPE -typedef int socklen_t; -#endif - - /* Samba needs type definitions for int8_t, int16_t, int32_t, int64_t @@ -194,7 +182,6 @@ extern int errno; /* Lists, trees, caching, database... */ #include "xfile.h" -#include "dlinklist.h" #include "talloc.h" #include "lib/ldb/include/ldb.h" #include "lib/tdb/include/tdb.h" @@ -203,9 +190,7 @@ extern int errno; #include "db_wrap.h" #include "nt_status.h" #include "trans2.h" -#include "ioctl.h" #include "nterr.h" -#include "messages.h" #include "charset.h" #include "dynconfig.h" @@ -221,8 +206,6 @@ extern int errno; #include "module.h" -#include "asn_1.h" - #include "mutex.h" #include "structs.h" diff --git a/source4/include/structs.h b/source4/include/structs.h index 609f7df8fd2..4820551b259 100644 --- a/source4/include/structs.h +++ b/source4/include/structs.h @@ -65,3 +65,6 @@ struct spnego_data; struct gensec_security; typedef NTSTATUS (*gensec_password_callback)(struct gensec_security *gensec_security, TALLOC_CTX *mem_ctx, char **password); + +struct asn1_data; + diff --git a/source4/include/system/glob.h b/source4/include/system/glob.h index fc56a18b9a6..676030b7994 100644 --- a/source4/include/system/glob.h +++ b/source4/include/system/glob.h @@ -24,3 +24,4 @@ #include #endif +#include diff --git a/source4/include/system/network.h b/source4/include/system/network.h index d380245865d..dfecd59090d 100644 --- a/source4/include/system/network.h +++ b/source4/include/system/network.h @@ -78,3 +78,6 @@ #define MAXHOSTNAMELEN 254 #endif +#ifndef HAVE_SOCKLEN_T_TYPE +typedef int socklen_t; +#endif diff --git a/source4/include/system/wait.h b/source4/include/system/wait.h index 29e5c6fe663..6af01986f92 100644 --- a/source4/include/system/wait.h +++ b/source4/include/system/wait.h @@ -23,3 +23,11 @@ #ifdef HAVE_SYS_WAIT_H #include #endif + +/* + * Define additional missing types + */ +#ifndef HAVE_SIG_ATOMIC_T_TYPE +typedef int sig_atomic_t; +#endif + diff --git a/source4/ldap_server/ldap_backend.c b/source4/ldap_server/ldap_backend.c index 03df64f922b..c4d44888c4f 100644 --- a/source4/ldap_server/ldap_backend.c +++ b/source4/ldap_server/ldap_backend.c @@ -19,6 +19,7 @@ */ #include "includes.h" +#include "dlinklist.h" struct ldapsrv_reply *ldapsrv_init_reply(struct ldapsrv_call *call, enum ldap_request_tag type) diff --git a/source4/ldap_server/ldap_server.c b/source4/ldap_server/ldap_server.c index 0cc83eca650..0ef3a523e8d 100644 --- a/source4/ldap_server/ldap_server.c +++ b/source4/ldap_server/ldap_server.c @@ -21,6 +21,8 @@ #include "includes.h" #include "auth/auth.h" +#include "dlinklist.h" +#include "asn_1.h" /* close the socket and shutdown a server_context @@ -443,7 +445,7 @@ static void ldapsrv_recv(struct server_connection *conn, time_t t, uint8_t *buf; int buf_length, msg_length; DATA_BLOB blob; - ASN1_DATA data; + struct asn1_data data; struct ldapsrv_call *call; NTSTATUS status; diff --git a/source4/lib/db_wrap.c b/source4/lib/db_wrap.c index 251741c5b04..c7861854991 100644 --- a/source4/lib/db_wrap.c +++ b/source4/lib/db_wrap.c @@ -28,6 +28,7 @@ */ #include "includes.h" +#include "dlinklist.h" static struct ldb_wrap *ldb_list; static struct tdb_wrap *tdb_list; diff --git a/source4/lib/events.c b/source4/lib/events.c index 276b3d08e98..4fb1e42ba3f 100644 --- a/source4/lib/events.c +++ b/source4/lib/events.c @@ -67,6 +67,7 @@ #include "includes.h" #include "system/time.h" #include "system/select.h" +#include "dlinklist.h" /* create a event_context structure. This must be the first events diff --git a/source4/lib/iconv.c b/source4/lib/iconv.c index 98905c4b844..c4fea25db59 100644 --- a/source4/lib/iconv.c +++ b/source4/lib/iconv.c @@ -20,6 +20,7 @@ */ #include "includes.h" +#include "dlinklist.h" #include "system/iconv.h" diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c index a2316919cbc..48d608ee942 100644 --- a/source4/lib/messaging/messaging.c +++ b/source4/lib/messaging/messaging.c @@ -22,6 +22,8 @@ #include "includes.h" #include "system/time.h" +#include "messages.h" +#include "dlinklist.h" /* change the message version with any incompatible changes in the protocol */ #define MESSAGING_VERSION 1 diff --git a/source4/lib/module.c b/source4/lib/module.c index 9e568f601ad..80360e4e728 100644 --- a/source4/lib/module.c +++ b/source4/lib/module.c @@ -22,6 +22,7 @@ #include "includes.h" #include "system/dir.h" #include "system/filesys.h" +#include "dlinklist.h" #ifdef HAVE_DLOPEN diff --git a/source4/lib/netif/interface.c b/source4/lib/netif/interface.c index 1db0f5caee5..3555170123f 100644 --- a/source4/lib/netif/interface.c +++ b/source4/lib/netif/interface.c @@ -21,6 +21,7 @@ #include "includes.h" #include "system/network.h" #include "lib/netif/netif.h" +#include "dlinklist.h" static struct iface_struct *probed_ifaces; static int total_probed; diff --git a/source4/lib/registry/common/reg_interface.c b/source4/lib/registry/common/reg_interface.c index 70b600ba338..76a1d04b086 100644 --- a/source4/lib/registry/common/reg_interface.c +++ b/source4/lib/registry/common/reg_interface.c @@ -19,6 +19,7 @@ */ #include "includes.h" +#include "dlinklist.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_REGISTRY diff --git a/source4/lib/tdb/common/tdbutil.c b/source4/lib/tdb/common/tdbutil.c index 0e0a6eca282..c9b5dc05e6c 100644 --- a/source4/lib/tdb/common/tdbutil.c +++ b/source4/lib/tdb/common/tdbutil.c @@ -19,7 +19,8 @@ */ #include "includes.h" -#include +#include "system/glob.h" +#include "dlinklist.h" /* these are little tdb utility functions that are meant to make dealing with a tdb database a little less cumbersome in Samba */ diff --git a/source4/libads/krb5_setpw.c b/source4/libads/krb5_setpw.c index f6a5b9375c8..257c28e755a 100644 --- a/source4/libads/krb5_setpw.c +++ b/source4/libads/krb5_setpw.c @@ -49,8 +49,7 @@ static DATA_BLOB encode_krb5_setpw(const char *principal, const char *password) char* realm = NULL; char* c; char* princ; - - ASN1_DATA req; + struct asn1_data req; DATA_BLOB ret; diff --git a/source4/libcli/auth/gensec_krb5.c b/source4/libcli/auth/gensec_krb5.c index 0e374e8219d..c3dd84135a8 100644 --- a/source4/libcli/auth/gensec_krb5.c +++ b/source4/libcli/auth/gensec_krb5.c @@ -28,6 +28,7 @@ #include "libcli/auth/kerberos.h" #include "librpc/gen_ndr/ndr_krb5pac.h" #include "auth/auth.h" +#include "asn_1.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_AUTH diff --git a/source4/libcli/auth/gensec_ntlmssp.c b/source4/libcli/auth/gensec_ntlmssp.c index 4b1d5f3b026..8ab90ebcfb2 100644 --- a/source4/libcli/auth/gensec_ntlmssp.c +++ b/source4/libcli/auth/gensec_ntlmssp.c @@ -23,6 +23,7 @@ #include "includes.h" #include "auth/auth.h" +#include "asn_1.h" struct gensec_ntlmssp_state { struct auth_context *auth_context; diff --git a/source4/libcli/auth/gssapi_parse.c b/source4/libcli/auth/gssapi_parse.c index 4a80e1d7992..529799955dd 100644 --- a/source4/libcli/auth/gssapi_parse.c +++ b/source4/libcli/auth/gssapi_parse.c @@ -23,13 +23,14 @@ */ #include "includes.h" +#include "asn_1.h" /* generate a krb5 GSS-API wrapper packet given a ticket */ DATA_BLOB gensec_gssapi_gen_krb5_wrap(TALLOC_CTX *mem_ctx, const DATA_BLOB *ticket, const uint8 tok_id[2]) { - ASN1_DATA data; + struct asn1_data data; DATA_BLOB ret; ZERO_STRUCT(data); @@ -58,7 +59,7 @@ DATA_BLOB gensec_gssapi_gen_krb5_wrap(TALLOC_CTX *mem_ctx, const DATA_BLOB *tick BOOL gensec_gssapi_parse_krb5_wrap(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob, DATA_BLOB *ticket, uint8 tok_id[2]) { BOOL ret; - ASN1_DATA data; + struct asn1_data data; int data_remaining; asn1_load(&data, *blob); diff --git a/source4/libcli/auth/kerberos_verify.c b/source4/libcli/auth/kerberos_verify.c index 8e598e2a664..6d87cf8d8b6 100644 --- a/source4/libcli/auth/kerberos_verify.c +++ b/source4/libcli/auth/kerberos_verify.c @@ -25,6 +25,7 @@ #include "includes.h" #include "system/kerberos.h" #include "libcli/auth/kerberos.h" +#include "asn_1.h" #ifdef HAVE_KRB5 @@ -32,7 +33,7 @@ static DATA_BLOB unwrap_pac(TALLOC_CTX *mem_ctx, DATA_BLOB *auth_data) { DATA_BLOB out; DATA_BLOB pac_contents = data_blob(NULL, 0); - ASN1_DATA data; + struct asn1_data data; int data_type; if (!auth_data->length) { return data_blob(NULL, 0); diff --git a/source4/libcli/auth/spnego.c b/source4/libcli/auth/spnego.c index ef9763cad7b..ab3aff32bba 100644 --- a/source4/libcli/auth/spnego.c +++ b/source4/libcli/auth/spnego.c @@ -24,6 +24,7 @@ #include "includes.h" #include "auth/auth.h" +#include "asn_1.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_AUTH diff --git a/source4/libcli/auth/spnego_parse.c b/source4/libcli/auth/spnego_parse.c index d6eacc4a6ab..f9385ed96e3 100644 --- a/source4/libcli/auth/spnego_parse.c +++ b/source4/libcli/auth/spnego_parse.c @@ -23,11 +23,12 @@ #include "includes.h" #include "auth/auth.h" +#include "asn_1.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_AUTH -static BOOL read_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *token) +static BOOL read_negTokenInit(struct asn1_data *asn1, struct spnego_negTokenInit *token) { ZERO_STRUCTP(token); @@ -117,7 +118,7 @@ static BOOL read_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *token return !asn1->has_error; } -static BOOL write_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *token) +static BOOL write_negTokenInit(struct asn1_data *asn1, struct spnego_negTokenInit *token) { asn1_push_tag(asn1, ASN1_CONTEXT(0)); asn1_push_tag(asn1, ASN1_SEQUENCE(0)); @@ -180,7 +181,7 @@ static BOOL write_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *toke return !asn1->has_error; } -static BOOL read_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *token) +static BOOL read_negTokenTarg(struct asn1_data *asn1, struct spnego_negTokenTarg *token) { ZERO_STRUCTP(token); @@ -229,7 +230,7 @@ static BOOL read_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *token return !asn1->has_error; } -static BOOL write_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *token) +static BOOL write_negTokenTarg(struct asn1_data *asn1, struct spnego_negTokenTarg *token) { asn1_push_tag(asn1, ASN1_CONTEXT(1)); asn1_push_tag(asn1, ASN1_SEQUENCE(0)); @@ -268,7 +269,7 @@ static BOOL write_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *toke ssize_t spnego_read_data(DATA_BLOB data, struct spnego_data *token) { - ASN1_DATA asn1; + struct asn1_data asn1; ssize_t ret = -1; uint8_t context; @@ -312,7 +313,7 @@ ssize_t spnego_read_data(DATA_BLOB data, struct spnego_data *token) ssize_t spnego_write_data(TALLOC_CTX *mem_ctx, DATA_BLOB *blob, struct spnego_data *spnego) { - ASN1_DATA asn1; + struct asn1_data asn1; ssize_t ret = -1; ZERO_STRUCT(asn1); diff --git a/source4/libcli/ldap/ldap.c b/source4/libcli/ldap/ldap.c index 9b481313e3f..5224373afc4 100644 --- a/source4/libcli/ldap/ldap.c +++ b/source4/libcli/ldap/ldap.c @@ -27,6 +27,8 @@ #include "system/network.h" #include "system/iconv.h" #include "auth/auth.h" +#include "asn_1.h" +#include "dlinklist.h" /**************************************************************************** * @@ -303,7 +305,7 @@ static struct ldap_parse_tree *ldap_parse_tree(TALLOC_CTX *mem_ctx, const char * return ldap_parse_simple(mem_ctx, s); } -static BOOL ldap_push_filter(ASN1_DATA *data, struct ldap_parse_tree *tree) +static BOOL ldap_push_filter(struct asn1_data *data, struct ldap_parse_tree *tree) { switch (tree->operation) { case LDAP_OP_SIMPLE: { @@ -354,7 +356,7 @@ static BOOL ldap_push_filter(ASN1_DATA *data, struct ldap_parse_tree *tree) return !data->has_error; } -static void ldap_encode_response(ASN1_DATA *data, struct ldap_Result *result) +static void ldap_encode_response(struct asn1_data *data, struct ldap_Result *result) { asn1_write_enumerated(data, result->resultcode); asn1_write_OctetString(data, result->dn, @@ -369,7 +371,7 @@ static void ldap_encode_response(ASN1_DATA *data, struct ldap_Result *result) BOOL ldap_encode(struct ldap_message *msg, DATA_BLOB *result) { - ASN1_DATA data; + struct asn1_data data; int i, j; ZERO_STRUCT(data); @@ -663,7 +665,7 @@ static const char *blob2string_talloc(TALLOC_CTX *mem_ctx, } static BOOL asn1_read_OctetString_talloc(TALLOC_CTX *mem_ctx, - ASN1_DATA *data, + struct asn1_data *data, const char **result) { DATA_BLOB string; @@ -675,7 +677,7 @@ static BOOL asn1_read_OctetString_talloc(TALLOC_CTX *mem_ctx, } static void ldap_decode_response(TALLOC_CTX *mem_ctx, - ASN1_DATA *data, + struct asn1_data *data, struct ldap_Result *result) { asn1_read_enumerated(data, &result->resultcode); @@ -690,7 +692,7 @@ static void ldap_decode_response(TALLOC_CTX *mem_ctx, } } -static BOOL ldap_decode_filter(TALLOC_CTX *mem_ctx, ASN1_DATA *data, +static BOOL ldap_decode_filter(TALLOC_CTX *mem_ctx, struct asn1_data *data, char **filter) { uint8 filter_tag, tag_desc; @@ -795,7 +797,7 @@ static BOOL ldap_decode_filter(TALLOC_CTX *mem_ctx, ASN1_DATA *data, return True; } -static void ldap_decode_attrib(TALLOC_CTX *mem_ctx, ASN1_DATA *data, +static void ldap_decode_attrib(TALLOC_CTX *mem_ctx, struct asn1_data *data, struct ldap_attribute *attrib) { asn1_start_tag(data, ASN1_SEQUENCE(0)); @@ -815,7 +817,7 @@ static void ldap_decode_attrib(TALLOC_CTX *mem_ctx, ASN1_DATA *data, } -static void ldap_decode_attribs(TALLOC_CTX *mem_ctx, ASN1_DATA *data, +static void ldap_decode_attribs(TALLOC_CTX *mem_ctx, struct asn1_data *data, struct ldap_attribute **attributes, int *num_attributes) { @@ -830,7 +832,7 @@ static void ldap_decode_attribs(TALLOC_CTX *mem_ctx, ASN1_DATA *data, asn1_end_tag(data); } -BOOL ldap_decode(ASN1_DATA *data, struct ldap_message *msg) +BOOL ldap_decode(struct asn1_data *data, struct ldap_message *msg) { uint8 tag; diff --git a/source4/libcli/raw/clisession.c b/source4/libcli/raw/clisession.c index 23e1d8507ee..b7802d8065c 100644 --- a/source4/libcli/raw/clisession.c +++ b/source4/libcli/raw/clisession.c @@ -22,6 +22,7 @@ #include "includes.h" #include "libcli/raw/libcliraw.h" #include "auth/auth.h" +#include "asn_1.h" #define SETUP_REQUEST_SESSION(cmd, wct, buflen) do { \ req = smbcli_request_setup_session(session, cmd, wct, buflen); \ diff --git a/source4/libcli/raw/clitransport.c b/source4/libcli/raw/clitransport.c index e70ee915c6f..c5e3d395452 100644 --- a/source4/libcli/raw/clitransport.c +++ b/source4/libcli/raw/clitransport.c @@ -22,6 +22,7 @@ #include "includes.h" #include "libcli/raw/libcliraw.h" #include "system/time.h" +#include "dlinklist.h" static void smbcli_transport_process_recv(struct smbcli_transport *transport); diff --git a/source4/libcli/raw/rawrequest.c b/source4/libcli/raw/rawrequest.c index 5cf1621d2d6..0526fec74b4 100644 --- a/source4/libcli/raw/rawrequest.c +++ b/source4/libcli/raw/rawrequest.c @@ -25,6 +25,7 @@ #include "includes.h" #include "libcli/raw/libcliraw.h" +#include "dlinklist.h" /* we over allocate the data buffer to prevent too many realloc calls */ #define REQ_OVER_ALLOCATION 256 diff --git a/source4/libcli/util/asn1.c b/source4/libcli/util/asn1.c index e03b1d5f391..15858f4f75c 100644 --- a/source4/libcli/util/asn1.c +++ b/source4/libcli/util/asn1.c @@ -19,15 +19,16 @@ */ #include "includes.h" +#include "asn_1.h" /* free an asn1 structure */ -void asn1_free(ASN1_DATA *data) +void asn1_free(struct asn1_data *data) { talloc_free(data->data); } /* write to the ASN1 buffer, advancing the buffer pointer */ -BOOL asn1_write(ASN1_DATA *data, const void *p, int len) +BOOL asn1_write(struct asn1_data *data, const void *p, int len) { if (data->has_error) return False; if (data->length < data->ofs+len) { @@ -47,13 +48,13 @@ BOOL asn1_write(ASN1_DATA *data, const void *p, int len) } /* useful fn for writing a uint8_t */ -BOOL asn1_write_uint8(ASN1_DATA *data, uint8_t v) +BOOL asn1_write_uint8(struct asn1_data *data, uint8_t v) { return asn1_write(data, &v, 1); } /* push a tag onto the asn1 data buffer. Used for nested structures */ -BOOL asn1_push_tag(ASN1_DATA *data, uint8_t tag) +BOOL asn1_push_tag(struct asn1_data *data, uint8_t tag) { struct nesting *nesting; @@ -71,7 +72,7 @@ BOOL asn1_push_tag(ASN1_DATA *data, uint8_t tag) } /* pop a tag */ -BOOL asn1_pop_tag(ASN1_DATA *data) +BOOL asn1_pop_tag(struct asn1_data *data) { struct nesting *nesting; size_t len; @@ -110,7 +111,7 @@ BOOL asn1_pop_tag(ASN1_DATA *data) /* "i" is the one's complement representation, as is the normal result of an * implicit signed->unsigned conversion */ -static BOOL push_int_bigendian(ASN1_DATA *data, unsigned int i, BOOL negative) +static BOOL push_int_bigendian(struct asn1_data *data, unsigned int i, BOOL negative) { uint8_t lowest = i & 0xFF; @@ -153,7 +154,7 @@ static BOOL push_int_bigendian(ASN1_DATA *data, unsigned int i, BOOL negative) /* write an Integer without the tag framing. Needed for example for the LDAP * Abandon Operation */ -BOOL asn1_write_implicit_Integer(ASN1_DATA *data, int i) +BOOL asn1_write_implicit_Integer(struct asn1_data *data, int i) { if (i == -1) { /* -1 is special as it consists of all-0xff bytes. In @@ -168,7 +169,7 @@ BOOL asn1_write_implicit_Integer(ASN1_DATA *data, int i) /* write an integer */ -BOOL asn1_write_Integer(ASN1_DATA *data, int i) +BOOL asn1_write_Integer(struct asn1_data *data, int i) { if (!asn1_push_tag(data, ASN1_INTEGER)) return False; if (!asn1_write_implicit_Integer(data, i)) return False; @@ -176,7 +177,7 @@ BOOL asn1_write_Integer(ASN1_DATA *data, int i) } /* write an object ID to a ASN1 buffer */ -BOOL asn1_write_OID(ASN1_DATA *data, const char *OID) +BOOL asn1_write_OID(struct asn1_data *data, const char *OID) { uint_t v, v2; const char *p = (const char *)OID; @@ -205,7 +206,7 @@ BOOL asn1_write_OID(ASN1_DATA *data, const char *OID) } /* write an octet string */ -BOOL asn1_write_OctetString(ASN1_DATA *data, const void *p, size_t length) +BOOL asn1_write_OctetString(struct asn1_data *data, const void *p, size_t length) { asn1_push_tag(data, ASN1_OCTET_STRING); asn1_write(data, p, length); @@ -214,7 +215,7 @@ BOOL asn1_write_OctetString(ASN1_DATA *data, const void *p, size_t length) } /* write a general string */ -BOOL asn1_write_GeneralString(ASN1_DATA *data, const char *s) +BOOL asn1_write_GeneralString(struct asn1_data *data, const char *s) { asn1_push_tag(data, ASN1_GENERAL_STRING); asn1_write(data, s, strlen(s)); @@ -222,7 +223,7 @@ BOOL asn1_write_GeneralString(ASN1_DATA *data, const char *s) return !data->has_error; } -BOOL asn1_write_ContextSimple(ASN1_DATA *data, uint8_t num, DATA_BLOB *blob) +BOOL asn1_write_ContextSimple(struct asn1_data *data, uint8_t num, DATA_BLOB *blob) { asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(num)); asn1_write(data, blob->data, blob->length); @@ -231,7 +232,7 @@ BOOL asn1_write_ContextSimple(ASN1_DATA *data, uint8_t num, DATA_BLOB *blob) } /* write a BOOLEAN */ -BOOL asn1_write_BOOLEAN(ASN1_DATA *data, BOOL v) +BOOL asn1_write_BOOLEAN(struct asn1_data *data, BOOL v) { asn1_push_tag(data, ASN1_BOOLEAN); asn1_write_uint8(data, v ? 0xFF : 0); @@ -239,7 +240,7 @@ BOOL asn1_write_BOOLEAN(ASN1_DATA *data, BOOL v) return !data->has_error; } -BOOL asn1_read_BOOLEAN(ASN1_DATA *data, BOOL *v) +BOOL asn1_read_BOOLEAN(struct asn1_data *data, BOOL *v) { uint8_t tmp = 0; asn1_start_tag(data, ASN1_BOOLEAN); @@ -254,7 +255,7 @@ BOOL asn1_read_BOOLEAN(ASN1_DATA *data, BOOL *v) } /* check a BOOLEAN */ -BOOL asn1_check_BOOLEAN(ASN1_DATA *data, BOOL v) +BOOL asn1_check_BOOLEAN(struct asn1_data *data, BOOL v) { uint8_t b = 0; @@ -272,8 +273,8 @@ BOOL asn1_check_BOOLEAN(ASN1_DATA *data, BOOL v) } -/* load a ASN1_DATA structure with a lump of data, ready to be parsed */ -BOOL asn1_load(ASN1_DATA *data, DATA_BLOB blob) +/* load a struct asn1_data structure with a lump of data, ready to be parsed */ +BOOL asn1_load(struct asn1_data *data, DATA_BLOB blob) { ZERO_STRUCTP(data); data->data = talloc_memdup(NULL, blob.data, blob.length); @@ -286,7 +287,7 @@ BOOL asn1_load(ASN1_DATA *data, DATA_BLOB blob) } /* Peek into an ASN1 buffer, not advancing the pointer */ -BOOL asn1_peek(ASN1_DATA *data, void *p, int len) +BOOL asn1_peek(struct asn1_data *data, void *p, int len) { if (len < 0 || data->ofs + len < data->ofs || data->ofs + len < len) return False; @@ -299,7 +300,7 @@ BOOL asn1_peek(ASN1_DATA *data, void *p, int len) } /* read from a ASN1 buffer, advancing the buffer pointer */ -BOOL asn1_read(ASN1_DATA *data, void *p, int len) +BOOL asn1_read(struct asn1_data *data, void *p, int len) { if (!asn1_peek(data, p, len)) { data->has_error = True; @@ -311,17 +312,17 @@ BOOL asn1_read(ASN1_DATA *data, void *p, int len) } /* read a uint8_t from a ASN1 buffer */ -BOOL asn1_read_uint8(ASN1_DATA *data, uint8_t *v) +BOOL asn1_read_uint8(struct asn1_data *data, uint8_t *v) { return asn1_read(data, v, 1); } -BOOL asn1_peek_uint8(ASN1_DATA *data, uint8_t *v) +BOOL asn1_peek_uint8(struct asn1_data *data, uint8_t *v) { return asn1_peek(data, v, 1); } -BOOL asn1_peek_tag(ASN1_DATA *data, uint8_t tag) +BOOL asn1_peek_tag(struct asn1_data *data, uint8_t tag) { uint8_t b; @@ -336,7 +337,7 @@ BOOL asn1_peek_tag(ASN1_DATA *data, uint8_t tag) } /* start reading a nested asn1 structure */ -BOOL asn1_start_tag(ASN1_DATA *data, uint8_t tag) +BOOL asn1_start_tag(struct asn1_data *data, uint8_t tag) { uint8_t b; struct nesting *nesting; @@ -378,7 +379,7 @@ BOOL asn1_start_tag(ASN1_DATA *data, uint8_t tag) return !data->has_error; } -static BOOL read_one_uint8(int sock, uint8_t *result, ASN1_DATA *data, +static BOOL read_one_uint8(int sock, uint8_t *result, struct asn1_data *data, const struct timeval *endtime) { if (read_data_until(sock, result, 1, endtime) != 1) @@ -388,7 +389,7 @@ static BOOL read_one_uint8(int sock, uint8_t *result, ASN1_DATA *data, } /* Read a complete ASN sequence (ie LDAP result) from a socket */ -BOOL asn1_read_sequence_until(int sock, ASN1_DATA *data, +BOOL asn1_read_sequence_until(int sock, struct asn1_data *data, const struct timeval *endtime) { uint8_t b; @@ -444,7 +445,7 @@ BOOL asn1_read_sequence_until(int sock, ASN1_DATA *data, BOOL asn1_object_length(uint8_t *buf, size_t buf_length, uint8_t tag, size_t *result) { - ASN1_DATA data; + struct asn1_data data; /* Fake the asn1_load to avoid the memdup, this is just to be able to * re-use the length-reading in asn1_start_tag */ @@ -461,7 +462,7 @@ BOOL asn1_object_length(uint8_t *buf, size_t buf_length, } /* stop reading a tag */ -BOOL asn1_end_tag(ASN1_DATA *data) +BOOL asn1_end_tag(struct asn1_data *data) { struct nesting *nesting; @@ -484,7 +485,7 @@ BOOL asn1_end_tag(ASN1_DATA *data) } /* work out how many bytes are left in this nested tag */ -int asn1_tag_remaining(ASN1_DATA *data) +int asn1_tag_remaining(struct asn1_data *data) { if (!data->nesting) { data->has_error = True; @@ -494,7 +495,7 @@ int asn1_tag_remaining(ASN1_DATA *data) } /* read an object ID from a ASN1 buffer */ -BOOL asn1_read_OID(ASN1_DATA *data, const char **OID) +BOOL asn1_read_OID(struct asn1_data *data, const char **OID) { uint8_t b; char *tmp_oid = NULL; @@ -523,7 +524,7 @@ BOOL asn1_read_OID(ASN1_DATA *data, const char **OID) } /* check that the next object ID is correct */ -BOOL asn1_check_OID(ASN1_DATA *data, const char *OID) +BOOL asn1_check_OID(struct asn1_data *data, const char *OID) { const char *id; @@ -538,7 +539,7 @@ BOOL asn1_check_OID(ASN1_DATA *data, const char *OID) } /* read a GeneralString from a ASN1 buffer */ -BOOL asn1_read_GeneralString(ASN1_DATA *data, char **s) +BOOL asn1_read_GeneralString(struct asn1_data *data, char **s) { int len; if (!asn1_start_tag(data, ASN1_GENERAL_STRING)) return False; @@ -559,7 +560,7 @@ BOOL asn1_read_GeneralString(ASN1_DATA *data, char **s) } /* read a octet string blob */ -BOOL asn1_read_OctetString(ASN1_DATA *data, DATA_BLOB *blob) +BOOL asn1_read_OctetString(struct asn1_data *data, DATA_BLOB *blob) { int len; ZERO_STRUCTP(blob); @@ -581,7 +582,7 @@ BOOL asn1_read_OctetString(ASN1_DATA *data, DATA_BLOB *blob) return True; } -BOOL asn1_read_ContextSimple(ASN1_DATA *data, uint8_t num, DATA_BLOB *blob) +BOOL asn1_read_ContextSimple(struct asn1_data *data, uint8_t num, DATA_BLOB *blob) { int len; ZERO_STRUCTP(blob); @@ -598,7 +599,7 @@ BOOL asn1_read_ContextSimple(ASN1_DATA *data, uint8_t num, DATA_BLOB *blob) } /* read an interger without tag*/ -BOOL asn1_read_implicit_Integer(ASN1_DATA *data, int *i) +BOOL asn1_read_implicit_Integer(struct asn1_data *data, int *i) { uint8_t b; *i = 0; @@ -612,7 +613,7 @@ BOOL asn1_read_implicit_Integer(ASN1_DATA *data, int *i) } /* read an interger */ -BOOL asn1_read_Integer(ASN1_DATA *data, int *i) +BOOL asn1_read_Integer(struct asn1_data *data, int *i) { *i = 0; @@ -623,7 +624,7 @@ BOOL asn1_read_Integer(ASN1_DATA *data, int *i) } /* read an interger */ -BOOL asn1_read_enumerated(ASN1_DATA *data, int *v) +BOOL asn1_read_enumerated(struct asn1_data *data, int *v) { *v = 0; @@ -637,7 +638,7 @@ BOOL asn1_read_enumerated(ASN1_DATA *data, int *v) } /* check a enumarted value is correct */ -BOOL asn1_check_enumerated(ASN1_DATA *data, int v) +BOOL asn1_check_enumerated(struct asn1_data *data, int v) { uint8_t b; if (!asn1_start_tag(data, ASN1_ENUMERATED)) return False; @@ -651,7 +652,7 @@ BOOL asn1_check_enumerated(ASN1_DATA *data, int v) } /* write an enumarted value to the stream */ -BOOL asn1_write_enumerated(ASN1_DATA *data, uint8_t v) +BOOL asn1_write_enumerated(struct asn1_data *data, uint8_t v) { if (!asn1_push_tag(data, ASN1_ENUMERATED)) return False; asn1_write_uint8(data, v); diff --git a/source4/librpc/ndr/ndr.c b/source4/librpc/ndr/ndr.c index 3462fb20c9c..8e8e49e2202 100644 --- a/source4/librpc/ndr/ndr.c +++ b/source4/librpc/ndr/ndr.c @@ -28,6 +28,7 @@ */ #include "includes.h" +#include "dlinklist.h" #define NDR_BASE_MARSHALL_SIZE 1024 diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c index 2ba7c4fff3e..78b31c9d31c 100644 --- a/source4/librpc/rpc/dcerpc.c +++ b/source4/librpc/rpc/dcerpc.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "dlinklist.h" #include "librpc/gen_ndr/ndr_epmapper.h" /* initialise a dcerpc pipe. */ diff --git a/source4/librpc/rpc/dcerpc_sock.c b/source4/librpc/rpc/dcerpc_sock.c index 11d016d8819..c0050da383c 100644 --- a/source4/librpc/rpc/dcerpc_sock.c +++ b/source4/librpc/rpc/dcerpc_sock.c @@ -22,6 +22,7 @@ */ #include "includes.h" +#include "dlinklist.h" #include "librpc/gen_ndr/ndr_epmapper.h" #define MIN_HDR_SIZE 16 diff --git a/source4/ntvfs/common/brlock.c b/source4/ntvfs/common/brlock.c index a952cb1dc7e..d1df0413ce8 100644 --- a/source4/ntvfs/common/brlock.c +++ b/source4/ntvfs/common/brlock.c @@ -26,6 +26,7 @@ used. This allows us to provide the same semantics as NT */ #include "includes.h" +#include "messages.h" /* in this module a "DATA_BLOB *file_key" is a blob that uniquely identifies diff --git a/source4/ntvfs/ipc/vfs_ipc.c b/source4/ntvfs/ipc/vfs_ipc.c index a0604a9d083..8bcf0382f9f 100644 --- a/source4/ntvfs/ipc/vfs_ipc.c +++ b/source4/ntvfs/ipc/vfs_ipc.c @@ -27,6 +27,7 @@ #include "includes.h" #include "system/filesys.h" +#include "dlinklist.h" /* this is the private structure used to keep the state of an open ipc$ connection. It needs to keep information about all open diff --git a/source4/ntvfs/ntvfs_base.c b/source4/ntvfs/ntvfs_base.c index 17900b3dfcf..24470ebd65d 100644 --- a/source4/ntvfs/ntvfs_base.c +++ b/source4/ntvfs/ntvfs_base.c @@ -24,6 +24,7 @@ */ #include "includes.h" +#include "dlinklist.h" /* the list of currently registered NTVFS backends, note that there diff --git a/source4/ntvfs/ntvfs_util.c b/source4/ntvfs/ntvfs_util.c index 929ec037de1..bd5a305e20c 100644 --- a/source4/ntvfs/ntvfs_util.c +++ b/source4/ntvfs/ntvfs_util.c @@ -22,6 +22,7 @@ */ #include "includes.h" +#include "dlinklist.h" NTSTATUS ntvfs_async_state_push(struct smbsrv_request *req, void *private_data, diff --git a/source4/ntvfs/posix/pvfs_ioctl.c b/source4/ntvfs/posix/pvfs_ioctl.c index 3eb016c5b42..9e2a8341443 100644 --- a/source4/ntvfs/posix/pvfs_ioctl.c +++ b/source4/ntvfs/posix/pvfs_ioctl.c @@ -22,6 +22,7 @@ #include "include/includes.h" #include "vfs_posix.h" +#include "ioctl.h" /* old ioctl interface diff --git a/source4/ntvfs/posix/pvfs_lock.c b/source4/ntvfs/posix/pvfs_lock.c index 3625fc7891c..2668eec0048 100644 --- a/source4/ntvfs/posix/pvfs_lock.c +++ b/source4/ntvfs/posix/pvfs_lock.c @@ -23,6 +23,8 @@ #include "include/includes.h" #include "vfs_posix.h" #include "system/time.h" +#include "dlinklist.h" +#include "messages.h" /* diff --git a/source4/ntvfs/posix/pvfs_open.c b/source4/ntvfs/posix/pvfs_open.c index 89da0f4b34a..f3ef72f4ed5 100644 --- a/source4/ntvfs/posix/pvfs_open.c +++ b/source4/ntvfs/posix/pvfs_open.c @@ -24,6 +24,7 @@ #include "vfs_posix.h" #include "system/time.h" #include "system/filesys.h" +#include "dlinklist.h" /* create file handles with convenient numbers for sniffers diff --git a/source4/ntvfs/print/vfs_print.c b/source4/ntvfs/print/vfs_print.c index d487392e6f8..b1155a07611 100644 --- a/source4/ntvfs/print/vfs_print.c +++ b/source4/ntvfs/print/vfs_print.c @@ -23,6 +23,7 @@ */ #include "includes.h" +#include "ioctl.h" /* connect to a share - used when a tree_connect operation comes diff --git a/source4/ntvfs/simple/vfs_simple.c b/source4/ntvfs/simple/vfs_simple.c index 4df0bc97823..4e9fd4895ec 100644 --- a/source4/ntvfs/simple/vfs_simple.c +++ b/source4/ntvfs/simple/vfs_simple.c @@ -29,6 +29,7 @@ #include "includes.h" #include "svfs.h" #include "system/time.h" +#include "dlinklist.h" #ifndef O_DIRECTORY #define O_DIRECTORY 0 diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c index 5b461182006..48c33a1cca0 100644 --- a/source4/param/loadparm.c +++ b/source4/param/loadparm.c @@ -57,6 +57,7 @@ #include "system/iconv.h" #include "system/network.h" #include "librpc/gen_ndr/ndr_svcctl.h" +#include "include/dlinklist.h" BOOL in_client = False; /* Not in the client by default */ static BOOL bLoaded = False; diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index 32addde703e..4bcbdc5b94e 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -25,6 +25,7 @@ #include "librpc/gen_ndr/ndr_epmapper.h" #include "librpc/gen_ndr/ndr_oxidresolver.h" #include "auth/auth.h" +#include "dlinklist.h" /* see if two endpoints match diff --git a/source4/rpc_server/handles.c b/source4/rpc_server/handles.c index 87749b27a16..2b070f6bdbf 100644 --- a/source4/rpc_server/handles.c +++ b/source4/rpc_server/handles.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "dlinklist.h" /* allocate a new rpc handle diff --git a/source4/smb_server/conn.c b/source4/smb_server/conn.c index b3970b252c2..dce77f79784 100644 --- a/source4/smb_server/conn.c +++ b/source4/smb_server/conn.c @@ -21,6 +21,7 @@ #include "includes.h" #include "system/filesys.h" +#include "dlinklist.h" /**************************************************************************** init the tcon structures diff --git a/source4/smb_server/negprot.c b/source4/smb_server/negprot.c index aa809664a12..b5002512654 100644 --- a/source4/smb_server/negprot.c +++ b/source4/smb_server/negprot.c @@ -20,6 +20,7 @@ #include "includes.h" #include "auth/auth.h" +#include "asn_1.h" /* initialise the auth_context for this server and return the cryptkey */ static void get_challenge(struct smbsrv_connection *smb_conn, char buff[8]) diff --git a/source4/smb_server/password.c b/source4/smb_server/password.c index 39952673778..fc3ee105847 100644 --- a/source4/smb_server/password.c +++ b/source4/smb_server/password.c @@ -19,6 +19,7 @@ */ #include "includes.h" +#include "dlinklist.h" /**************************************************************************** diff --git a/source4/smb_server/request.c b/source4/smb_server/request.c index 5d5b397dd31..14e1d558cb5 100644 --- a/source4/smb_server/request.c +++ b/source4/smb_server/request.c @@ -23,6 +23,7 @@ */ #include "includes.h" +#include "dlinklist.h" /* we over allocate the data buffer to prevent too many realloc calls */ #define REQ_OVER_ALLOCATION 256 diff --git a/source4/smb_server/sesssetup.c b/source4/smb_server/sesssetup.c index c3d378f0e39..8f55df58d26 100644 --- a/source4/smb_server/sesssetup.c +++ b/source4/smb_server/sesssetup.c @@ -23,6 +23,7 @@ #include "includes.h" #include "auth/auth.h" +#include "asn_1.h" /* setup the OS, Lanman and domain portions of a session setup reply diff --git a/source4/smb_server/smb_server.c b/source4/smb_server/smb_server.c index 521cfd7de99..a42ec3c82b9 100644 --- a/source4/smb_server/smb_server.c +++ b/source4/smb_server/smb_server.c @@ -22,6 +22,7 @@ #include "includes.h" #include "system/time.h" +#include "dlinklist.h" /* diff --git a/source4/smbd/process_single.c b/source4/smbd/process_single.c index 603726e22d9..2e49d033214 100644 --- a/source4/smbd/process_single.c +++ b/source4/smbd/process_single.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "dlinklist.h" /* diff --git a/source4/smbd/process_standard.c b/source4/smbd/process_standard.c index 9b5547ce540..64297032005 100644 --- a/source4/smbd/process_standard.c +++ b/source4/smbd/process_standard.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "dlinklist.h" /* called when the process model is selected diff --git a/source4/smbd/service.c b/source4/smbd/service.c index b7be3a1e6a8..7fc09b55007 100644 --- a/source4/smbd/service.c +++ b/source4/smbd/service.c @@ -23,6 +23,7 @@ #include "includes.h" #include "system/dir.h" +#include "dlinklist.h" struct server_context *server_service_startup(const char *model) { diff --git a/source4/torture/basic/aliases.c b/source4/torture/basic/aliases.c index b63a1555f35..ba4bf69f134 100644 --- a/source4/torture/basic/aliases.c +++ b/source4/torture/basic/aliases.c @@ -19,6 +19,7 @@ */ #include "includes.h" +#include "dlinklist.h" int create_complex_file(struct smbcli_state *cli, TALLOC_CTX *mem_ctx, const char *fname); diff --git a/source4/torture/ldap/common.c b/source4/torture/ldap/common.c index 7051403abbf..a0fe31d0e97 100644 --- a/source4/torture/ldap/common.c +++ b/source4/torture/ldap/common.c @@ -22,6 +22,7 @@ */ #include "includes.h" +#include "asn_1.h" NTSTATUS torture_ldap_bind(struct ldap_connection *conn, const char *userdn, const char *password) { @@ -111,7 +112,7 @@ BOOL ldap_sasl_send_msg(struct ldap_connection *conn, struct ldap_message *msg, DATA_BLOB creds; DATA_BLOB pdu; int len; - ASN1_DATA asn1; + struct asn1_data asn1; TALLOC_CTX *mem_ctx; msg->messageid = conn->next_msgid++; diff --git a/source4/torture/nbench/nbio.c b/source4/torture/nbench/nbio.c index 5ef791037a7..98b1c08c976 100644 --- a/source4/torture/nbench/nbio.c +++ b/source4/torture/nbench/nbio.c @@ -22,6 +22,7 @@ #include "includes.h" #include "system/time.h" +#include "dlinklist.h" #define MAX_FILES 100 diff --git a/source4/torture/raw/ioctl.c b/source4/torture/raw/ioctl.c index fedb6c71f09..50d3566fe8b 100644 --- a/source4/torture/raw/ioctl.c +++ b/source4/torture/raw/ioctl.c @@ -20,6 +20,7 @@ */ #include "includes.h" +#include "ioctl.h" #define BASEDIR "\\rawioctl" diff --git a/source4/torture/torture.c b/source4/torture/torture.c index 4ff2fd92871..fa6d513a536 100644 --- a/source4/torture/torture.c +++ b/source4/torture/torture.c @@ -23,6 +23,7 @@ #include "libcli/raw/libcliraw.h" #include "system/time.h" #include "system/wait.h" +#include "ioctl.h" int torture_nprocs=4; int torture_numops=100; diff --git a/source4/utils/ntlm_auth.c b/source4/utils/ntlm_auth.c index 787977abcea..14f8e46b212 100644 --- a/source4/utils/ntlm_auth.c +++ b/source4/utils/ntlm_auth.c @@ -26,6 +26,7 @@ #include "system/passwd.h" #include "lib/cmdline/popt_common.h" #include "auth/auth.h" +#include "asn_1.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_WINBIND