• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/samba-3.5.8/source3/rpc_client/

Lines Matching defs:prhdr

445 				 struct rpc_hdr_info *prhdr,
453 if(!smb_io_rpc_hdr("rpc_hdr ", prhdr, pdu, 0)) {
458 if (prhdr->frag_len > cli->max_recv_frag) {
460 " we only allow %d\n", (int)prhdr->frag_len,
476 struct rpc_hdr_info *prhdr;
486 struct rpc_hdr_info *prhdr,
501 state->prhdr = prhdr;
524 status = parse_rpc_header(cli, prhdr, pdu);
532 if (pdu_len < prhdr->frag_len) {
533 if (!rpc_grow_buffer(pdu, prhdr->frag_len)) {
540 prhdr->frag_len - pdu_len);
575 status = parse_rpc_header(state->cli, state->prhdr, state->pdu);
581 if (!rpc_grow_buffer(state->pdu, state->prhdr->frag_len)) {
594 state->prhdr->frag_len - RPC_HEADER_LEN);
627 static NTSTATUS cli_pipe_verify_ntlmssp(struct rpc_pipe_client *cli, RPC_HDR *prhdr,
633 uint32 auth_len = prhdr->auth_len;
653 (RPC_HEADER_LEN + RPC_HDR_RESP_LEN + RPC_HDR_AUTH_LEN + auth_len > prhdr->frag_len)) {
667 data_len = (size_t)(prhdr->frag_len - RPC_HEADER_LEN - RPC_HDR_RESP_LEN - RPC_HDR_AUTH_LEN - auth_len);
670 full_packet_data_len = prhdr->frag_len - auth_len;
748 static NTSTATUS cli_pipe_verify_schannel(struct rpc_pipe_client *cli, RPC_HDR *prhdr,
753 uint32 auth_len = prhdr->auth_len;
778 (RPC_HEADER_LEN + RPC_HDR_RESP_LEN + RPC_HDR_AUTH_LEN + auth_len > prhdr->frag_len)) {
784 data_len = prhdr->frag_len - RPC_HEADER_LEN - RPC_HDR_RESP_LEN - RPC_HDR_AUTH_LEN - auth_len;
865 static NTSTATUS cli_pipe_validate_rpc_response(struct rpc_pipe_client *cli, RPC_HDR *prhdr,
872 if (prhdr->auth_len) {
873 if (prhdr->auth_len > prhdr->frag_len) {
877 if (prhdr->auth_len + (unsigned int)RPC_HDR_AUTH_LEN < prhdr->auth_len ||
878 prhdr->auth_len + (unsigned int)RPC_HDR_AUTH_LEN < (unsigned int)RPC_HDR_AUTH_LEN) {
890 if (prhdr->auth_len) {
895 (unsigned int)prhdr->auth_len ));
902 ret = cli_pipe_verify_ntlmssp(cli, prhdr, current_pdu, p_ss_padding_len);
909 ret = cli_pipe_verify_schannel(cli, prhdr, current_pdu, p_ss_padding_len);
932 static NTSTATUS cli_pipe_validate_current_pdu(struct rpc_pipe_client *cli, RPC_HDR *prhdr,
943 if (current_pdu_len != prhdr->frag_len) {
945 (unsigned int)current_pdu_len, (unsigned int)prhdr->frag_len ));
957 switch (prhdr->pkt_type) {
976 ret = cli_pipe_validate_rpc_response(cli, prhdr,
992 if (prhdr->auth_len) {
995 if (*pdata_len < RPC_HDR_AUTH_LEN + prhdr->auth_len) {
998 *pdata_len -= (RPC_HDR_AUTH_LEN + prhdr->auth_len);
1057 (unsigned int)prhdr->pkt_type,
1062 if (prhdr->pkt_type != expected_pkt_type) {
1066 prhdr->pkt_type,
1075 if ((prhdr->pkt_type == DCERPC_PKT_BIND_ACK) && !(prhdr->flags & DCERPC_PFC_FLAG_LAST)) {
1078 prhdr->flags |= DCERPC_PFC_FLAG_FIRST|DCERPC_PFC_FLAG_LAST;
1091 static NTSTATUS cli_pipe_reset_current_pdu(struct rpc_pipe_client *cli, RPC_HDR *prhdr, prs_struct *current_pdu)
1095 if (current_pdu_len < prhdr->frag_len) {
1100 if (current_pdu_len == (uint32)prhdr->frag_len) {
1113 memcpy(prs_data_p(current_pdu), prs_data_p(current_pdu) + prhdr->frag_len,
1114 current_pdu_len - prhdr->frag_len);
1120 if (!prs_set_buffer_size(current_pdu, current_pdu_len - prhdr->frag_len)) {