Lines Matching refs:rap

154 smb_rap_rqparam_z(struct smb_rap *rap, const char *value)  in smb_rap_rqparam_z()  argument
158 bcopy(value, rap->r_npbuf, len); in smb_rap_rqparam_z()
159 rap->r_npbuf += len; in smb_rap_rqparam_z()
160 rap->r_plen += len; in smb_rap_rqparam_z()
165 smb_rap_rqparam(struct smb_rap *rap, char ptype, char plen, long value) in smb_rap_rqparam() argument
167 char *p = rap->r_npbuf; in smb_rap_rqparam()
186 rap->r_npbuf += len; in smb_rap_rqparam()
187 rap->r_plen += len; in smb_rap_rqparam()
195 struct smb_rap *rap; in smb_rap_create() local
199 rap = malloc(sizeof(*rap)); in smb_rap_create()
200 if (rap == NULL) in smb_rap_create()
202 bzero(rap, sizeof(*rap)); in smb_rap_create()
203 p = rap->r_sparam = rap->r_nparam = strdup(param); in smb_rap_create()
204 rap->r_sdata = rap->r_ndata = strdup(data); in smb_rap_create()
215 rap->r_pbuf = rap->r_npbuf = malloc(len); in smb_rap_create()
216 smb_rap_rqparam(rap, 'W', 1, fn); in smb_rap_create()
217 smb_rap_rqparam_z(rap, rap->r_sparam); in smb_rap_create()
218 smb_rap_rqparam_z(rap, rap->r_sdata); in smb_rap_create()
219 *rapp = rap; in smb_rap_create()
224 smb_rap_done(struct smb_rap *rap) in smb_rap_done() argument
226 if (rap->r_sparam) in smb_rap_done()
227 free(rap->r_sparam); in smb_rap_done()
228 if (rap->r_sdata) in smb_rap_done()
229 free(rap->r_sdata); in smb_rap_done()
230 free(rap); in smb_rap_done()
234 smb_rap_setNparam(struct smb_rap *rap, long value) in smb_rap_setNparam() argument
236 char *p = rap->r_nparam; in smb_rap_setNparam()
245 rap->r_rcvbuflen = value; in smb_rap_setNparam()
250 error = smb_rap_rqparam(rap, ptype, plen, value); in smb_rap_setNparam()
255 rap->r_nparam = p; in smb_rap_setNparam()
260 smb_rap_setPparam(struct smb_rap *rap, void *value) in smb_rap_setPparam() argument
262 char *p = rap->r_nparam; in smb_rap_setPparam()
271 rap->r_rcvbuf = value; in smb_rap_setPparam()
276 rap->r_nparam = p; in smb_rap_setPparam()
281 smb_rap_getNparam(struct smb_rap *rap, long *value) in smb_rap_getNparam() argument
283 char *p = rap->r_nparam; in smb_rap_getNparam()
292 *value = le16toh(*(u_int16_t*)rap->r_npbuf); in smb_rap_getNparam()
297 rap->r_npbuf += plen; in smb_rap_getNparam()
298 rap->r_nparam = p; in smb_rap_getNparam()
303 smb_rap_request(struct smb_rap *rap, struct smb_ctx *ctx) in smb_rap_request() argument
307 char *dp, *p = rap->r_nparam; in smb_rap_request()
311 rdatacnt = rap->r_rcvbuflen; in smb_rap_request()
312 rparamcnt = rap->r_plen; in smb_rap_request()
314 rap->r_plen, rap->r_pbuf, /* int tparamcnt, void *tparam */ in smb_rap_request()
316 &rparamcnt, rap->r_pbuf, /* rparamcnt, void *rparam */ in smb_rap_request()
317 &rdatacnt, rap->r_rcvbuf /* int *rdatacnt, void *rdata */ in smb_rap_request()
321 rp = (u_int16_t*)rap->r_pbuf; in smb_rap_request()
322 rap->r_result = le16toh(*rp++); in smb_rap_request()
324 rap->r_npbuf = (char*)rp; in smb_rap_request()
325 rap->r_entries = entries = 0; in smb_rap_request()
331 rap->r_entries = entries = le16toh(*(u_int16_t*)rap->r_npbuf); in smb_rap_request()
332 rap->r_npbuf += 2; in smb_rap_request()
344 rap->r_nparam = p; in smb_rap_request()
349 dp = rap->r_rcvbuf; in smb_rap_request()
351 p = rap->r_sdata; in smb_rap_request()
372 smb_rap_error(struct smb_rap *rap, int error) in smb_rap_error() argument
376 if (rap->r_result == 0) in smb_rap_error()
378 return rap->r_result | SMB_RAP_ERROR; in smb_rap_error()
385 struct smb_rap *rap; in smb_rap_NetShareEnum() local
389 error = smb_rap_create(0, "WrLeh", "B13BWz", &rap); in smb_rap_NetShareEnum()
392 smb_rap_setNparam(rap, sLevel); /* W - sLevel */ in smb_rap_NetShareEnum()
393 smb_rap_setPparam(rap, pbBuffer); /* r - pbBuffer */ in smb_rap_NetShareEnum()
394 smb_rap_setNparam(rap, cbBuffer); /* L - cbBuffer */ in smb_rap_NetShareEnum()
395 error = smb_rap_request(rap, ctx); in smb_rap_NetShareEnum()
397 *pcEntriesRead = rap->r_entries; in smb_rap_NetShareEnum()
398 error = smb_rap_getNparam(rap, &lval); in smb_rap_NetShareEnum()
401 error = smb_rap_error(rap, error); in smb_rap_NetShareEnum()
402 smb_rap_done(rap); in smb_rap_NetShareEnum()