diff options
author | Luke Leighton <lkcl@samba.org> | 1999-11-15 22:11:10 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1999-11-15 22:11:10 +0000 |
commit | b231d2fafaff8dc67ef2dbaec778f716524d4f6a (patch) | |
tree | 054f060f9d6cd60535ebee5501177d8b839b7577 /source3/include | |
parent | 4c479f0574019afb2fc8a3dbfc802c75fde89244 (diff) | |
download | samba-b231d2fafaff8dc67ef2dbaec778f716524d4f6a.tar.gz samba-b231d2fafaff8dc67ef2dbaec778f716524d4f6a.tar.bz2 samba-b231d2fafaff8dc67ef2dbaec778f716524d4f6a.zip |
- added DCE/RPC "fault" PDU support.
- disabled (AGAIN) the GETDC "if (MAILSLOT\NTLOGON)" code that will get
NT5rc2 to work but WILL break win95 (AGAIN). this needs _not_ to be
re-enabled but to be replaced with a better mechanism.
- added SMBwrite support (note: SMBwriteX already existed) as NT5rc2 is
sending DCE/RPC over SMBwrite not SMBwriteX.
(This used to be commit 25c70e3c984c4fed19763ed405741e83fe14f87e)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/nameserv.h | 1 | ||||
-rw-r--r-- | source3/include/ntdomain.h | 12 | ||||
-rw-r--r-- | source3/include/proto.h | 5 | ||||
-rw-r--r-- | source3/include/rpc_dce.h | 9 |
4 files changed, 22 insertions, 5 deletions
diff --git a/source3/include/nameserv.h b/source3/include/nameserv.h index 995a47b2fa..ad25131481 100644 --- a/source3/include/nameserv.h +++ b/source3/include/nameserv.h @@ -501,6 +501,7 @@ struct packet_struct #define QUERYFORPDC_R 12 /* Response to Query for PDC. */ #define SAMLOGON 18 #define SAMLOGON_R 19 +#define SAMLOGON_UNK_R 21 /* Ids for netbios packet types. */ diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h index c36f619ef2..7f58874475 100644 --- a/source3/include/ntdomain.h +++ b/source3/include/ntdomain.h @@ -74,17 +74,19 @@ typedef struct pipes_struct fstring pipe_srv_name; prs_struct rhdr; /* output header */ + prs_struct rfault; /* fault */ prs_struct rdata; /* output data */ prs_struct rdata_i; /* output data (intermediate, for fragments) */ prs_struct rauth; /* output authentication verifier */ prs_struct rverf; /* output verifier */ prs_struct rntlm; /* output ntlmssp */ - RPC_HDR hdr; - RPC_HDR_BA hdr_ba; - RPC_HDR_RB hdr_rb; - RPC_HDR_REQ hdr_req; - RPC_HDR_RESP hdr_resp; + RPC_HDR hdr; + RPC_HDR_BA hdr_ba; + RPC_HDR_RB hdr_rb; + RPC_HDR_REQ hdr_req; + RPC_HDR_RESP hdr_resp; + RPC_HDR_FAULT hdr_fault; RPC_HDR_AUTH auth_info; RPC_HDR_AUTHA autha_info; diff --git a/source3/include/proto.h b/source3/include/proto.h index 0b0ca16c54..df05f2d7be 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -480,6 +480,9 @@ int set_maxfiles(int requested_max); void reg_get_subkey(char *full_keyname, char *key_name, char *subkey_name); BOOL reg_split_key(const char *full_keyname, uint32 *reg_type, char *key_name); BOOL become_user_permanently(uid_t uid, gid_t gid); + +/*The following definitions come from lib/util_array.c */ + void free_void_array(uint32 num_entries, void **entries, void(free_item)(void*)); void* add_item_to_array(uint32 *len, void ***array, const void *item, @@ -2511,6 +2514,7 @@ BOOL reg_io_r_shutdown(char *desc, REG_R_SHUTDOWN *r_q, prs_struct *ps, int dep BOOL make_rpc_hdr(RPC_HDR *hdr, enum RPC_PKT_TYPE pkt_type, uint8 flags, uint32 call_id, int data_len, int auth_len); BOOL smb_io_rpc_hdr(char *desc, RPC_HDR *rpc, prs_struct *ps, int depth); +BOOL smb_io_rpc_hdr_fault(char *desc, RPC_HDR_FAULT *rpc, prs_struct *ps, int depth); BOOL make_rpc_hdr_rb(RPC_HDR_RB *rpc, uint16 max_tsize, uint16 max_rsize, uint32 assoc_gid, uint32 num_elements, uint16 context_id, uint8 num_syntaxes, @@ -3912,6 +3916,7 @@ BOOL domain_client_validate( char *user, char *domain, int reply_open_pipe_and_X(connection_struct *conn, char *inbuf,char *outbuf,int length,int bufsize); +int reply_pipe_write(char *inbuf,char *outbuf,int length,int bufsize); int reply_pipe_write_and_X(char *inbuf,char *outbuf,int length,int bufsize); int reply_pipe_read_and_X(char *inbuf,char *outbuf,int length,int bufsize); int reply_pipe_close(connection_struct *conn, char *inbuf,char *outbuf); diff --git a/source3/include/rpc_dce.h b/source3/include/rpc_dce.h index 3b2b3071d2..52544ac642 100644 --- a/source3/include/rpc_dce.h +++ b/source3/include/rpc_dce.h @@ -43,6 +43,7 @@ enum RPC_PKT_TYPE /* DCE/RPC flags */ #define RPC_FLG_FIRST 0x01 #define RPC_FLG_LAST 0x02 +#define RPC_FLG_NOCALL 0x20 /* NTLMSSP message types */ enum NTLM_MESSAGE_TYPE @@ -127,6 +128,14 @@ typedef struct rpc_hdr_resp_info } RPC_HDR_RESP; +/* RPC_HDR_FAULT - ms fault rpc header */ +typedef struct rpc_hdr_fault_info +{ + uint32 status; + uint32 reserved; /* 0x0000 0000 */ + +} RPC_HDR_FAULT; + /* 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 * "srvsvc", "\\PIPE\\ntsvcs" |