1
0
mirror of https://github.com/samba-team/samba.git synced 2025-09-09 01:44:21 +03:00

r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ioctl.h)

(This used to be commit b97e395c81)
This commit is contained in:
Andrew Tridgell
2004-11-02 06:42:15 +00:00
committed by Gerald (Jerry) Carter
parent a1d0b97ed4
commit 3643fb1109
60 changed files with 134 additions and 80 deletions

View File

@@ -19,6 +19,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#include "auth/auth.h" #include "auth/auth.h"
#undef DBGC_CLASS #undef DBGC_CLASS

View File

@@ -27,6 +27,7 @@
#include "libcli/raw/libcliraw.h" #include "libcli/raw/libcliraw.h"
#include "system/time.h" #include "system/time.h"
#include "system/dir.h" #include "system/dir.h"
#include "dlinklist.h"
#ifndef REGISTER #ifndef REGISTER
#define REGISTER 0 #define REGISTER 0

View File

@@ -27,13 +27,13 @@ struct nesting {
struct nesting *next; struct nesting *next;
}; };
typedef struct asn1_data { struct asn1_data {
uint8_t *data; uint8_t *data;
size_t length; size_t length;
off_t ofs; off_t ofs;
struct nesting *nesting; struct nesting *nesting;
BOOL has_error; BOOL has_error;
} ASN1_DATA; };
#define ASN1_APPLICATION(x) ((x)+0x60) #define ASN1_APPLICATION(x) ((x)+0x60)
#define ASN1_APPLICATION_SIMPLE(x) ((x)+0x40) #define ASN1_APPLICATION_SIMPLE(x) ((x)+0x40)

View File

@@ -109,18 +109,6 @@
#define VOLATILE #define VOLATILE
#endif #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 Samba needs type definitions for
int8_t, int16_t, int32_t, int64_t int8_t, int16_t, int32_t, int64_t
@@ -194,7 +182,6 @@ extern int errno;
/* Lists, trees, caching, database... */ /* Lists, trees, caching, database... */
#include "xfile.h" #include "xfile.h"
#include "dlinklist.h"
#include "talloc.h" #include "talloc.h"
#include "lib/ldb/include/ldb.h" #include "lib/ldb/include/ldb.h"
#include "lib/tdb/include/tdb.h" #include "lib/tdb/include/tdb.h"
@@ -203,9 +190,7 @@ extern int errno;
#include "db_wrap.h" #include "db_wrap.h"
#include "nt_status.h" #include "nt_status.h"
#include "trans2.h" #include "trans2.h"
#include "ioctl.h"
#include "nterr.h" #include "nterr.h"
#include "messages.h"
#include "charset.h" #include "charset.h"
#include "dynconfig.h" #include "dynconfig.h"
@@ -221,8 +206,6 @@ extern int errno;
#include "module.h" #include "module.h"
#include "asn_1.h"
#include "mutex.h" #include "mutex.h"
#include "structs.h" #include "structs.h"

View File

@@ -65,3 +65,6 @@ struct spnego_data;
struct gensec_security; struct gensec_security;
typedef NTSTATUS (*gensec_password_callback)(struct gensec_security *gensec_security, TALLOC_CTX *mem_ctx, typedef NTSTATUS (*gensec_password_callback)(struct gensec_security *gensec_security, TALLOC_CTX *mem_ctx,
char **password); char **password);
struct asn1_data;

View File

@@ -24,3 +24,4 @@
#include <glob.h> #include <glob.h>
#endif #endif
#include <fnmatch.h>

View File

@@ -78,3 +78,6 @@
#define MAXHOSTNAMELEN 254 #define MAXHOSTNAMELEN 254
#endif #endif
#ifndef HAVE_SOCKLEN_T_TYPE
typedef int socklen_t;
#endif

View File

@@ -23,3 +23,11 @@
#ifdef HAVE_SYS_WAIT_H #ifdef HAVE_SYS_WAIT_H
#include <sys/wait.h> #include <sys/wait.h>
#endif #endif
/*
* Define additional missing types
*/
#ifndef HAVE_SIG_ATOMIC_T_TYPE
typedef int sig_atomic_t;
#endif

View File

@@ -19,6 +19,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
struct ldapsrv_reply *ldapsrv_init_reply(struct ldapsrv_call *call, enum ldap_request_tag type) struct ldapsrv_reply *ldapsrv_init_reply(struct ldapsrv_call *call, enum ldap_request_tag type)

View File

@@ -21,6 +21,8 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "dlinklist.h"
#include "asn_1.h"
/* /*
close the socket and shutdown a server_context 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; uint8_t *buf;
int buf_length, msg_length; int buf_length, msg_length;
DATA_BLOB blob; DATA_BLOB blob;
ASN1_DATA data; struct asn1_data data;
struct ldapsrv_call *call; struct ldapsrv_call *call;
NTSTATUS status; NTSTATUS status;

View File

@@ -28,6 +28,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
static struct ldb_wrap *ldb_list; static struct ldb_wrap *ldb_list;
static struct tdb_wrap *tdb_list; static struct tdb_wrap *tdb_list;

View File

@@ -67,6 +67,7 @@
#include "includes.h" #include "includes.h"
#include "system/time.h" #include "system/time.h"
#include "system/select.h" #include "system/select.h"
#include "dlinklist.h"
/* /*
create a event_context structure. This must be the first events create a event_context structure. This must be the first events

View File

@@ -20,6 +20,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#include "system/iconv.h" #include "system/iconv.h"

View File

@@ -22,6 +22,8 @@
#include "includes.h" #include "includes.h"
#include "system/time.h" #include "system/time.h"
#include "messages.h"
#include "dlinklist.h"
/* change the message version with any incompatible changes in the protocol */ /* change the message version with any incompatible changes in the protocol */
#define MESSAGING_VERSION 1 #define MESSAGING_VERSION 1

View File

@@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "system/dir.h" #include "system/dir.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "dlinklist.h"
#ifdef HAVE_DLOPEN #ifdef HAVE_DLOPEN

View File

@@ -21,6 +21,7 @@
#include "includes.h" #include "includes.h"
#include "system/network.h" #include "system/network.h"
#include "lib/netif/netif.h" #include "lib/netif/netif.h"
#include "dlinklist.h"
static struct iface_struct *probed_ifaces; static struct iface_struct *probed_ifaces;
static int total_probed; static int total_probed;

View File

@@ -19,6 +19,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#undef DBGC_CLASS #undef DBGC_CLASS
#define DBGC_CLASS DBGC_REGISTRY #define DBGC_CLASS DBGC_REGISTRY

View File

@@ -19,7 +19,8 @@
*/ */
#include "includes.h" #include "includes.h"
#include <fnmatch.h> #include "system/glob.h"
#include "dlinklist.h"
/* these are little tdb utility functions that are meant to make /* these are little tdb utility functions that are meant to make
dealing with a tdb database a little less cumbersome in Samba */ dealing with a tdb database a little less cumbersome in Samba */

View File

@@ -49,8 +49,7 @@ static DATA_BLOB encode_krb5_setpw(const char *principal, const char *password)
char* realm = NULL; char* realm = NULL;
char* c; char* c;
char* princ; char* princ;
struct asn1_data req;
ASN1_DATA req;
DATA_BLOB ret; DATA_BLOB ret;

View File

@@ -28,6 +28,7 @@
#include "libcli/auth/kerberos.h" #include "libcli/auth/kerberos.h"
#include "librpc/gen_ndr/ndr_krb5pac.h" #include "librpc/gen_ndr/ndr_krb5pac.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
#undef DBGC_CLASS #undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH #define DBGC_CLASS DBGC_AUTH

View File

@@ -23,6 +23,7 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
struct gensec_ntlmssp_state { struct gensec_ntlmssp_state {
struct auth_context *auth_context; struct auth_context *auth_context;

View File

@@ -23,13 +23,14 @@
*/ */
#include "includes.h" #include "includes.h"
#include "asn_1.h"
/* /*
generate a krb5 GSS-API wrapper packet given a ticket 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]) 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; DATA_BLOB ret;
ZERO_STRUCT(data); 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 gensec_gssapi_parse_krb5_wrap(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob, DATA_BLOB *ticket, uint8 tok_id[2])
{ {
BOOL ret; BOOL ret;
ASN1_DATA data; struct asn1_data data;
int data_remaining; int data_remaining;
asn1_load(&data, *blob); asn1_load(&data, *blob);

View File

@@ -25,6 +25,7 @@
#include "includes.h" #include "includes.h"
#include "system/kerberos.h" #include "system/kerberos.h"
#include "libcli/auth/kerberos.h" #include "libcli/auth/kerberos.h"
#include "asn_1.h"
#ifdef HAVE_KRB5 #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 out;
DATA_BLOB pac_contents = data_blob(NULL, 0); DATA_BLOB pac_contents = data_blob(NULL, 0);
ASN1_DATA data; struct asn1_data data;
int data_type; int data_type;
if (!auth_data->length) { if (!auth_data->length) {
return data_blob(NULL, 0); return data_blob(NULL, 0);

View File

@@ -24,6 +24,7 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
#undef DBGC_CLASS #undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH #define DBGC_CLASS DBGC_AUTH

View File

@@ -23,11 +23,12 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
#undef DBGC_CLASS #undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH #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); ZERO_STRUCTP(token);
@@ -117,7 +118,7 @@ static BOOL read_negTokenInit(ASN1_DATA *asn1, struct spnego_negTokenInit *token
return !asn1->has_error; 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_CONTEXT(0));
asn1_push_tag(asn1, ASN1_SEQUENCE(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; 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); ZERO_STRUCTP(token);
@@ -229,7 +230,7 @@ static BOOL read_negTokenTarg(ASN1_DATA *asn1, struct spnego_negTokenTarg *token
return !asn1->has_error; 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_CONTEXT(1));
asn1_push_tag(asn1, ASN1_SEQUENCE(0)); 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) ssize_t spnego_read_data(DATA_BLOB data, struct spnego_data *token)
{ {
ASN1_DATA asn1; struct asn1_data asn1;
ssize_t ret = -1; ssize_t ret = -1;
uint8_t context; 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) 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; ssize_t ret = -1;
ZERO_STRUCT(asn1); ZERO_STRUCT(asn1);

View File

@@ -27,6 +27,8 @@
#include "system/network.h" #include "system/network.h"
#include "system/iconv.h" #include "system/iconv.h"
#include "auth/auth.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); 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) { switch (tree->operation) {
case LDAP_OP_SIMPLE: { 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; 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_enumerated(data, result->resultcode);
asn1_write_OctetString(data, result->dn, 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) BOOL ldap_encode(struct ldap_message *msg, DATA_BLOB *result)
{ {
ASN1_DATA data; struct asn1_data data;
int i, j; int i, j;
ZERO_STRUCT(data); 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, static BOOL asn1_read_OctetString_talloc(TALLOC_CTX *mem_ctx,
ASN1_DATA *data, struct asn1_data *data,
const char **result) const char **result)
{ {
DATA_BLOB string; 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, static void ldap_decode_response(TALLOC_CTX *mem_ctx,
ASN1_DATA *data, struct asn1_data *data,
struct ldap_Result *result) struct ldap_Result *result)
{ {
asn1_read_enumerated(data, &result->resultcode); 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) char **filter)
{ {
uint8 filter_tag, tag_desc; uint8 filter_tag, tag_desc;
@@ -795,7 +797,7 @@ static BOOL ldap_decode_filter(TALLOC_CTX *mem_ctx, ASN1_DATA *data,
return True; 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) struct ldap_attribute *attrib)
{ {
asn1_start_tag(data, ASN1_SEQUENCE(0)); 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, struct ldap_attribute **attributes,
int *num_attributes) int *num_attributes)
{ {
@@ -830,7 +832,7 @@ static void ldap_decode_attribs(TALLOC_CTX *mem_ctx, ASN1_DATA *data,
asn1_end_tag(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; uint8 tag;

View File

@@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "libcli/raw/libcliraw.h" #include "libcli/raw/libcliraw.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
#define SETUP_REQUEST_SESSION(cmd, wct, buflen) do { \ #define SETUP_REQUEST_SESSION(cmd, wct, buflen) do { \
req = smbcli_request_setup_session(session, cmd, wct, buflen); \ req = smbcli_request_setup_session(session, cmd, wct, buflen); \

View File

@@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "libcli/raw/libcliraw.h" #include "libcli/raw/libcliraw.h"
#include "system/time.h" #include "system/time.h"
#include "dlinklist.h"
static void smbcli_transport_process_recv(struct smbcli_transport *transport); static void smbcli_transport_process_recv(struct smbcli_transport *transport);

View File

@@ -25,6 +25,7 @@
#include "includes.h" #include "includes.h"
#include "libcli/raw/libcliraw.h" #include "libcli/raw/libcliraw.h"
#include "dlinklist.h"
/* we over allocate the data buffer to prevent too many realloc calls */ /* we over allocate the data buffer to prevent too many realloc calls */
#define REQ_OVER_ALLOCATION 256 #define REQ_OVER_ALLOCATION 256

View File

@@ -19,15 +19,16 @@
*/ */
#include "includes.h" #include "includes.h"
#include "asn_1.h"
/* free an asn1 structure */ /* free an asn1 structure */
void asn1_free(ASN1_DATA *data) void asn1_free(struct asn1_data *data)
{ {
talloc_free(data->data); talloc_free(data->data);
} }
/* write to the ASN1 buffer, advancing the buffer pointer */ /* 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->has_error) return False;
if (data->length < data->ofs+len) { 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 */ /* 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); return asn1_write(data, &v, 1);
} }
/* push a tag onto the asn1 data buffer. Used for nested structures */ /* 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; struct nesting *nesting;
@@ -71,7 +72,7 @@ BOOL asn1_push_tag(ASN1_DATA *data, uint8_t tag)
} }
/* pop a tag */ /* pop a tag */
BOOL asn1_pop_tag(ASN1_DATA *data) BOOL asn1_pop_tag(struct asn1_data *data)
{ {
struct nesting *nesting; struct nesting *nesting;
size_t len; 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 /* "i" is the one's complement representation, as is the normal result of an
* implicit signed->unsigned conversion */ * 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; 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 /* write an Integer without the tag framing. Needed for example for the LDAP
* Abandon Operation */ * 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) { if (i == -1) {
/* -1 is special as it consists of all-0xff bytes. In /* -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 */ /* 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_push_tag(data, ASN1_INTEGER)) return False;
if (!asn1_write_implicit_Integer(data, i)) 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 */ /* 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; uint_t v, v2;
const char *p = (const char *)OID; const char *p = (const char *)OID;
@@ -205,7 +206,7 @@ BOOL asn1_write_OID(ASN1_DATA *data, const char *OID)
} }
/* write an octet string */ /* 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_push_tag(data, ASN1_OCTET_STRING);
asn1_write(data, p, length); 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 */ /* 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_push_tag(data, ASN1_GENERAL_STRING);
asn1_write(data, s, strlen(s)); asn1_write(data, s, strlen(s));
@@ -222,7 +223,7 @@ BOOL asn1_write_GeneralString(ASN1_DATA *data, const char *s)
return !data->has_error; 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_push_tag(data, ASN1_CONTEXT_SIMPLE(num));
asn1_write(data, blob->data, blob->length); 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 */ /* 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_push_tag(data, ASN1_BOOLEAN);
asn1_write_uint8(data, v ? 0xFF : 0); asn1_write_uint8(data, v ? 0xFF : 0);
@@ -239,7 +240,7 @@ BOOL asn1_write_BOOLEAN(ASN1_DATA *data, BOOL v)
return !data->has_error; 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; uint8_t tmp = 0;
asn1_start_tag(data, ASN1_BOOLEAN); asn1_start_tag(data, ASN1_BOOLEAN);
@@ -254,7 +255,7 @@ BOOL asn1_read_BOOLEAN(ASN1_DATA *data, BOOL *v)
} }
/* check a BOOLEAN */ /* 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; 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 */ /* load a struct asn1_data structure with a lump of data, ready to be parsed */
BOOL asn1_load(ASN1_DATA *data, DATA_BLOB blob) BOOL asn1_load(struct asn1_data *data, DATA_BLOB blob)
{ {
ZERO_STRUCTP(data); ZERO_STRUCTP(data);
data->data = talloc_memdup(NULL, blob.data, blob.length); 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 */ /* 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) if (len < 0 || data->ofs + len < data->ofs || data->ofs + len < len)
return False; 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 */ /* 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)) { if (!asn1_peek(data, p, len)) {
data->has_error = True; 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 */ /* 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); 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); 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; uint8_t b;
@@ -336,7 +337,7 @@ BOOL asn1_peek_tag(ASN1_DATA *data, uint8_t tag)
} }
/* start reading a nested asn1 structure */ /* 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; uint8_t b;
struct nesting *nesting; struct nesting *nesting;
@@ -378,7 +379,7 @@ BOOL asn1_start_tag(ASN1_DATA *data, uint8_t tag)
return !data->has_error; 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) const struct timeval *endtime)
{ {
if (read_data_until(sock, result, 1, endtime) != 1) 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 */ /* 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) const struct timeval *endtime)
{ {
uint8_t b; 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, BOOL asn1_object_length(uint8_t *buf, size_t buf_length,
uint8_t tag, size_t *result) 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 /* Fake the asn1_load to avoid the memdup, this is just to be able to
* re-use the length-reading in asn1_start_tag */ * 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 */ /* stop reading a tag */
BOOL asn1_end_tag(ASN1_DATA *data) BOOL asn1_end_tag(struct asn1_data *data)
{ {
struct nesting *nesting; 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 */ /* 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) { if (!data->nesting) {
data->has_error = True; data->has_error = True;
@@ -494,7 +495,7 @@ int asn1_tag_remaining(ASN1_DATA *data)
} }
/* read an object ID from a ASN1 buffer */ /* 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; uint8_t b;
char *tmp_oid = NULL; 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 */ /* 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; const char *id;
@@ -538,7 +539,7 @@ BOOL asn1_check_OID(ASN1_DATA *data, const char *OID)
} }
/* read a GeneralString from a ASN1 buffer */ /* 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; int len;
if (!asn1_start_tag(data, ASN1_GENERAL_STRING)) return False; 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 */ /* 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; int len;
ZERO_STRUCTP(blob); ZERO_STRUCTP(blob);
@@ -581,7 +582,7 @@ BOOL asn1_read_OctetString(ASN1_DATA *data, DATA_BLOB *blob)
return True; 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; int len;
ZERO_STRUCTP(blob); 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*/ /* 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; uint8_t b;
*i = 0; *i = 0;
@@ -612,7 +613,7 @@ BOOL asn1_read_implicit_Integer(ASN1_DATA *data, int *i)
} }
/* read an interger */ /* read an interger */
BOOL asn1_read_Integer(ASN1_DATA *data, int *i) BOOL asn1_read_Integer(struct asn1_data *data, int *i)
{ {
*i = 0; *i = 0;
@@ -623,7 +624,7 @@ BOOL asn1_read_Integer(ASN1_DATA *data, int *i)
} }
/* read an interger */ /* read an interger */
BOOL asn1_read_enumerated(ASN1_DATA *data, int *v) BOOL asn1_read_enumerated(struct asn1_data *data, int *v)
{ {
*v = 0; *v = 0;
@@ -637,7 +638,7 @@ BOOL asn1_read_enumerated(ASN1_DATA *data, int *v)
} }
/* check a enumarted value is correct */ /* 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; uint8_t b;
if (!asn1_start_tag(data, ASN1_ENUMERATED)) return False; 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 */ /* 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; if (!asn1_push_tag(data, ASN1_ENUMERATED)) return False;
asn1_write_uint8(data, v); asn1_write_uint8(data, v);

View File

@@ -28,6 +28,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#define NDR_BASE_MARSHALL_SIZE 1024 #define NDR_BASE_MARSHALL_SIZE 1024

View File

@@ -21,6 +21,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#include "librpc/gen_ndr/ndr_epmapper.h" #include "librpc/gen_ndr/ndr_epmapper.h"
/* initialise a dcerpc pipe. */ /* initialise a dcerpc pipe. */

View File

@@ -22,6 +22,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
#include "librpc/gen_ndr/ndr_epmapper.h" #include "librpc/gen_ndr/ndr_epmapper.h"
#define MIN_HDR_SIZE 16 #define MIN_HDR_SIZE 16

View File

@@ -26,6 +26,7 @@
used. This allows us to provide the same semantics as NT */ used. This allows us to provide the same semantics as NT */
#include "includes.h" #include "includes.h"
#include "messages.h"
/* /*
in this module a "DATA_BLOB *file_key" is a blob that uniquely identifies in this module a "DATA_BLOB *file_key" is a blob that uniquely identifies

View File

@@ -27,6 +27,7 @@
#include "includes.h" #include "includes.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "dlinklist.h"
/* this is the private structure used to keep the state of an open /* this is the private structure used to keep the state of an open
ipc$ connection. It needs to keep information about all open ipc$ connection. It needs to keep information about all open

View File

@@ -24,6 +24,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/* the list of currently registered NTVFS backends, note that there /* the list of currently registered NTVFS backends, note that there

View File

@@ -22,6 +22,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
NTSTATUS ntvfs_async_state_push(struct smbsrv_request *req, NTSTATUS ntvfs_async_state_push(struct smbsrv_request *req,
void *private_data, void *private_data,

View File

@@ -22,6 +22,7 @@
#include "include/includes.h" #include "include/includes.h"
#include "vfs_posix.h" #include "vfs_posix.h"
#include "ioctl.h"
/* /*
old ioctl interface old ioctl interface

View File

@@ -23,6 +23,8 @@
#include "include/includes.h" #include "include/includes.h"
#include "vfs_posix.h" #include "vfs_posix.h"
#include "system/time.h" #include "system/time.h"
#include "dlinklist.h"
#include "messages.h"
/* /*

View File

@@ -24,6 +24,7 @@
#include "vfs_posix.h" #include "vfs_posix.h"
#include "system/time.h" #include "system/time.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "dlinklist.h"
/* /*
create file handles with convenient numbers for sniffers create file handles with convenient numbers for sniffers

View File

@@ -23,6 +23,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "ioctl.h"
/* /*
connect to a share - used when a tree_connect operation comes connect to a share - used when a tree_connect operation comes

View File

@@ -29,6 +29,7 @@
#include "includes.h" #include "includes.h"
#include "svfs.h" #include "svfs.h"
#include "system/time.h" #include "system/time.h"
#include "dlinklist.h"
#ifndef O_DIRECTORY #ifndef O_DIRECTORY
#define O_DIRECTORY 0 #define O_DIRECTORY 0

View File

@@ -57,6 +57,7 @@
#include "system/iconv.h" #include "system/iconv.h"
#include "system/network.h" #include "system/network.h"
#include "librpc/gen_ndr/ndr_svcctl.h" #include "librpc/gen_ndr/ndr_svcctl.h"
#include "include/dlinklist.h"
BOOL in_client = False; /* Not in the client by default */ BOOL in_client = False; /* Not in the client by default */
static BOOL bLoaded = False; static BOOL bLoaded = False;

View File

@@ -25,6 +25,7 @@
#include "librpc/gen_ndr/ndr_epmapper.h" #include "librpc/gen_ndr/ndr_epmapper.h"
#include "librpc/gen_ndr/ndr_oxidresolver.h" #include "librpc/gen_ndr/ndr_oxidresolver.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "dlinklist.h"
/* /*
see if two endpoints match see if two endpoints match

View File

@@ -21,6 +21,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/* /*
allocate a new rpc handle allocate a new rpc handle

View File

@@ -21,6 +21,7 @@
#include "includes.h" #include "includes.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "dlinklist.h"
/**************************************************************************** /****************************************************************************
init the tcon structures init the tcon structures

View File

@@ -20,6 +20,7 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
/* initialise the auth_context for this server and return the cryptkey */ /* initialise the auth_context for this server and return the cryptkey */
static void get_challenge(struct smbsrv_connection *smb_conn, char buff[8]) static void get_challenge(struct smbsrv_connection *smb_conn, char buff[8])

View File

@@ -19,6 +19,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/**************************************************************************** /****************************************************************************

View File

@@ -23,6 +23,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/* we over allocate the data buffer to prevent too many realloc calls */ /* we over allocate the data buffer to prevent too many realloc calls */
#define REQ_OVER_ALLOCATION 256 #define REQ_OVER_ALLOCATION 256

View File

@@ -23,6 +23,7 @@
#include "includes.h" #include "includes.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
/* /*
setup the OS, Lanman and domain portions of a session setup reply setup the OS, Lanman and domain portions of a session setup reply

View File

@@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "system/time.h" #include "system/time.h"
#include "dlinklist.h"
/* /*

View File

@@ -21,6 +21,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/* /*

View File

@@ -21,6 +21,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
/* /*
called when the process model is selected called when the process model is selected

View File

@@ -23,6 +23,7 @@
#include "includes.h" #include "includes.h"
#include "system/dir.h" #include "system/dir.h"
#include "dlinklist.h"
struct server_context *server_service_startup(const char *model) struct server_context *server_service_startup(const char *model)
{ {

View File

@@ -19,6 +19,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "dlinklist.h"
int create_complex_file(struct smbcli_state *cli, TALLOC_CTX *mem_ctx, const char *fname); int create_complex_file(struct smbcli_state *cli, TALLOC_CTX *mem_ctx, const char *fname);

View File

@@ -22,6 +22,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "asn_1.h"
NTSTATUS torture_ldap_bind(struct ldap_connection *conn, const char *userdn, const char *password) 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 creds;
DATA_BLOB pdu; DATA_BLOB pdu;
int len; int len;
ASN1_DATA asn1; struct asn1_data asn1;
TALLOC_CTX *mem_ctx; TALLOC_CTX *mem_ctx;
msg->messageid = conn->next_msgid++; msg->messageid = conn->next_msgid++;

View File

@@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "system/time.h" #include "system/time.h"
#include "dlinklist.h"
#define MAX_FILES 100 #define MAX_FILES 100

View File

@@ -20,6 +20,7 @@
*/ */
#include "includes.h" #include "includes.h"
#include "ioctl.h"
#define BASEDIR "\\rawioctl" #define BASEDIR "\\rawioctl"

View File

@@ -23,6 +23,7 @@
#include "libcli/raw/libcliraw.h" #include "libcli/raw/libcliraw.h"
#include "system/time.h" #include "system/time.h"
#include "system/wait.h" #include "system/wait.h"
#include "ioctl.h"
int torture_nprocs=4; int torture_nprocs=4;
int torture_numops=100; int torture_numops=100;

View File

@@ -26,6 +26,7 @@
#include "system/passwd.h" #include "system/passwd.h"
#include "lib/cmdline/popt_common.h" #include "lib/cmdline/popt_common.h"
#include "auth/auth.h" #include "auth/auth.h"
#include "asn_1.h"
#undef DBGC_CLASS #undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND #define DBGC_CLASS DBGC_WINBIND