From e300c0346ff92035ff9568b55b34469193e29769 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 10 Apr 1998 18:21:16 +0000 Subject: includes.h: Moved HPUX undefine of SEMMSL to where it actually does something. ipc.c: Added Luke's debug statement. locking_slow.c: Added FTRUNCATE_NEEDS_ROOT code for broken systems that need it (not sure what these are yet). membuffer.c ntdomain.h proto.h lib/rpc/include/rpc_dce.h lib/rpc/include/rpc_srvsvc.h lib/rpc/parse/parse_prs.c lib/rpc/parse/parse_rpc.c lib/rpc/server/srv_pipe_hnd.c lib/rpc/server/srv_util.c: Re-merge of Luke's NTDOM changes 'cos he's a lazy git with carpel tunnel syndrome :-). Jeremy. (This used to be commit 52e3966fbcf7b5fbdbc7cbe9ac0b453ab5bf3217) --- source3/include/includes.h | 10 +++++----- source3/include/ntdomain.h | 3 ++- source3/include/proto.h | 8 +++++--- source3/include/rpc_dce.h | 18 +++++++++++++----- source3/include/rpc_srvsvc.h | 2 +- 5 files changed, 26 insertions(+), 15 deletions(-) (limited to 'source3/include') diff --git a/source3/include/includes.h b/source3/include/includes.h index 5df76668c6..2ba069aa76 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -606,11 +606,6 @@ char *mktemp(char *); /* No standard include */ not good for HPUX */ /* #define SIGCLD_IGNORE */ #define USE_SIGPROCMASK /* Needed to stop zombie processes on HPUX 9.x and 10.x.*/ -#ifdef HPUX10 -#ifdef SEMMSL -#undef SEMMSL -#endif /* SEMMSL */ -#endif /* HPUX10 */ #endif /* HPUX */ @@ -1137,6 +1132,11 @@ union semun { unsigned short *array; }; #endif +#if defined(HPUX) && defined(HPUX10) +#ifdef SEMMSL +#undef SEMMSL +#endif /* SEMMSL */ +#endif /* HPUX && HPUX10 */ #endif #ifdef AFS_AUTH diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h index 32812aa8b1..67fe879f9b 100644 --- a/source3/include/ntdomain.h +++ b/source3/include/ntdomain.h @@ -69,7 +69,8 @@ typedef struct RPC_HDR hdr; RPC_HDR_BA hdr_ba; RPC_HDR_RB hdr_rb; - RPC_HDR_RR hdr_rr; + RPC_HDR_REQ hdr_req; + RPC_HDR_RESP hdr_resp; RPC_AUTH_NTLMSSP_REQ ntlmssp_req; RPC_AUTH_NTLMSSP_RESP ntlmssp_resp; diff --git a/source3/include/proto.h b/source3/include/proto.h index ad9a36ca62..faf295f625 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -471,8 +471,10 @@ void make_rpc_hdr_ba(RPC_HDR_BA *rpc, uint8 num_results, uint16 result, uint16 reason, RPC_IFACE *transfer); void smb_io_rpc_hdr_ba(char *desc, RPC_HDR_BA *rpc, prs_struct *ps, int depth); -void make_rpc_hdr_rr(RPC_HDR_RR *hdr, uint32 data_len, uint8 opnum); -void smb_io_rpc_hdr_rr(char *desc, RPC_HDR_RR *rpc, prs_struct *ps, int depth); +void make_rpc_hdr_req(RPC_HDR_REQ *hdr, uint32 data_len, uint16 opnum); +void smb_io_rpc_hdr_req(char *desc, RPC_HDR_REQ *rpc, prs_struct *ps, int depth); +void make_rpc_hdr_resp(RPC_HDR_RESP *hdr, uint32 data_len); +void smb_io_rpc_hdr_resp(char *desc, RPC_HDR_RESP *rpc, prs_struct *ps, int depth); void make_rpc_auth_ntlmssp_req(RPC_AUTH_NTLMSSP_REQ *req, fstring ntlmssp_str, uint32 ntlmssp_ver, uint32 unknown_0, fstring myname, fstring domain); @@ -1116,7 +1118,7 @@ void mem_buf_free(struct mem_buf **buf); void mem_free_chain(struct mem_buf **buf); void mem_free_data(struct mem_buf *buf); BOOL mem_realloc_data(struct mem_buf *buf, int new_size); -BOOL mem_grow_data(struct mem_buf **buf, BOOL io, int new_size); +BOOL mem_grow_data(struct mem_buf **buf, BOOL io, int new_size, BOOL force_grow); BOOL mem_find(struct mem_buf **buf, uint32 offset); uint32 mem_buf_len(struct mem_buf *buf); char *mem_data(struct mem_buf **buf, uint32 offset); diff --git a/source3/include/rpc_dce.h b/source3/include/rpc_dce.h index 9aacaaab87..2e3995e43d 100644 --- a/source3/include/rpc_dce.h +++ b/source3/include/rpc_dce.h @@ -75,16 +75,24 @@ typedef struct rpc_hdr_info } RPC_HDR; -/* RPC_HDR_RR - ms request / response rpc header */ -typedef struct rpc_hdr_rr_info +/* RPC_HDR_REQ - ms request rpc header */ +typedef struct rpc_hdr_req_info { uint32 alloc_hint; /* allocation hint - data size (bytes) minus header and tail. */ - uint8 context_id; /* 0 - presentation context identifier */ + uint16 context_id; /* 0 - presentation context identifier */ + uint16 opnum; /* opnum */ + +} RPC_HDR_REQ; + +/* RPC_HDR_RESP - ms response rpc header */ +typedef struct rpc_hdr_resp_info +{ + uint32 alloc_hint; /* allocation hint - data size (bytes) minus header and tail. */ + uint16 context_id; /* 0 - presentation context identifier */ uint8 cancel_count; /* 0 - cancel count */ - uint8 opnum; /* opnum */ uint8 reserved; /* 0 - reserved. */ -} RPC_HDR_RR; +} RPC_HDR_RESP; /* this seems to be the same string name depending on the name of the pipe, * but is more likely to be linked to the interface name diff --git a/source3/include/rpc_srvsvc.h b/source3/include/rpc_srvsvc.h index 4d11b915e4..6ba137da2f 100644 --- a/source3/include/rpc_srvsvc.h +++ b/source3/include/rpc_srvsvc.h @@ -249,7 +249,7 @@ typedef struct r_net_conn_enum_info /* oops - this is going to take up a *massive* amount of stack. */ /* the UNISTR2s already have 1024 uint16 chars in them... */ -#define MAX_SHARE_ENTRIES 32 +#define MAX_SHARE_ENTRIES 128 /* SH_INFO_1 (pointers to level 1 share info strings) */ typedef struct ptr_share_info1 -- cgit