• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/samba-3.5.8/source4/libcli/raw/

Lines Matching refs:req

56 	struct smbcli_request *req;
60 req = smbcli_request_setup_transport(transport, SMBnegprot, 0, 0);
61 if (!req) {
77 SSVAL(req->out.hdr,HDR_FLG2, flags2);
81 smbcli_req_append_bytes(req, (const uint8_t *)"\2", 1);
82 smbcli_req_append_string(req, prots[i].name, STR_TERMINATE | STR_ASCII);
85 if (!smbcli_request_send(req)) {
86 smbcli_request_destroy(req);
90 return req;
96 NTSTATUS smb_raw_negotiate_recv(struct smbcli_request *req)
98 struct smbcli_transport *transport = req->transport;
101 if (!smbcli_request_receive(req) ||
102 smbcli_request_is_error(req)) {
103 return smbcli_request_destroy(req);
106 SMBCLI_CHECK_MIN_WCT(req, 1);
108 protocol = SVALS(req->in.vwv, VWV(0));
111 req->status = NT_STATUS_UNSUCCESSFUL;
112 return smbcli_request_destroy(req);
121 SMBCLI_CHECK_WCT(req, 17);
122 transport->negotiate.sec_mode = CVAL(req->in.vwv,VWV(1));
123 transport->negotiate.max_mux = SVAL(req->in.vwv,VWV(1)+1);
124 transport->negotiate.max_xmit = IVAL(req->in.vwv,VWV(3)+1);
125 transport->negotiate.sesskey = IVAL(req->in.vwv,VWV(7)+1);
126 transport->negotiate.capabilities = IVAL(req->in.vwv,VWV(9)+1);
129 ntt = smbcli_pull_nttime(req->in.vwv, VWV(11)+1);
131 transport->negotiate.server_zone = SVALS(req->in.vwv,VWV(15)+1) * 60;
132 transport->negotiate.key_len = CVAL(req->in.vwv,VWV(16)+1);
135 if (req->in.data_size < 16) {
138 transport->negotiate.server_guid = smbcli_req_pull_blob(&req->in.bufinfo, transport, req->in.data, 16);
139 transport->negotiate.secblob = smbcli_req_pull_blob(&req->in.bufinfo, transport, req->in.data + 16, req->in.data_size - 16);
141 if (req->in.data_size < (transport->negotiate.key_len)) {
144 transport->negotiate.secblob = smbcli_req_pull_blob(&req->in.bufinfo, transport, req->in.data, transport->negotiate.key_len);
145 smbcli_req_pull_string(&req->in.bufinfo, transport, &transport->negotiate.server_domain,
146 req->in.data+transport->negotiate.key_len,
147 req->in.data_size-transport->negotiate.key_len, STR_UNICODE|STR_NOALIGN);
156 SMBCLI_CHECK_WCT(req, 13);
157 transport->negotiate.sec_mode = SVAL(req->in.vwv,VWV(1));
158 transport->negotiate.max_xmit = SVAL(req->in.vwv,VWV(2));
159 transport->negotiate.sesskey = IVAL(req->in.vwv,VWV(6));
160 transport->negotiate.server_zone = SVALS(req->in.vwv,VWV(10)) * 60;
164 req->in.vwv+VWV(8));
165 if ((SVAL(req->in.vwv,VWV(5)) & 0x1)) {
168 if ((SVAL(req->in.vwv,VWV(5)) & 0x2)) {
171 transport->negotiate.secblob = smbcli_req_pull_blob(&req->in.bufinfo, transport,
172 req->in.data, req->in.data_size);
195 return smbcli_request_destroy(req);
204 struct smbcli_request *req = smb_raw_negotiate_send(transport, unicode, maxprotocol);
205 return smb_raw_negotiate_recv(req);