summaryrefslogtreecommitdiff
path: root/source3/smbd/proto.h
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/proto.h')
-rw-r--r--source3/smbd/proto.h12
1 files changed, 12 insertions, 0 deletions
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,