From c9870a62f5d8865e67ae519db3f8e890afb6ee70 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Tue, 28 Feb 2012 00:19:48 +0100 Subject: s3: Add a new set of andx chain handling routines This is in preparation of getting rid of chain_reply. --- source3/smbd/proto.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'source3/smbd/proto.h') diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h index e97a85d589..e5dd762663 100644 --- a/source3/smbd/proto.h +++ b/source3/smbd/proto.h @@ -785,6 +785,18 @@ void add_to_common_flags2(uint32 v); void remove_from_common_flags2(uint32 v); void construct_reply_common_req(struct smb_request *req, char *outbuf); size_t req_wct_ofs(struct smb_request *req); +bool smb1_is_chain(const uint8_t *buf); +bool smb1_walk_chain(const uint8_t *buf, + bool (*fn)(uint8_t cmd, + uint8_t wct, const uint16_t *vwv, + uint16_t num_bytes, const uint8_t *bytes, + void *private_data), + void *private_data); +unsigned smb1_chain_length(const uint8_t *buf); +bool smb1_parse_chain(TALLOC_CTX *mem_ctx, const uint8_t *buf, + struct smbd_server_connection *sconn, + bool encrypted, uint32_t seqnum, + struct smb_request ***reqs, unsigned *num_reqs); void chain_reply(struct smb_request *req); bool req_is_in_chain(struct smb_request *req); void smbd_process(struct tevent_context *ev_ctx, -- cgit