aio_ex 54 source3/smbd/aio.c static int handle_aio_read_complete(struct aio_extra *aio_ex, int errcode);
aio_ex 55 source3/smbd/aio.c static int handle_aio_write_complete(struct aio_extra *aio_ex, int errcode);
aio_ex 57 source3/smbd/aio.c static int aio_extra_destructor(struct aio_extra *aio_ex)
aio_ex 59 source3/smbd/aio.c DLIST_REMOVE(aio_list_head, aio_ex);
aio_ex 70 source3/smbd/aio.c struct aio_extra *aio_ex = TALLOC_ZERO_P(NULL, struct aio_extra);
aio_ex 72 source3/smbd/aio.c if (!aio_ex) {
aio_ex 80 source3/smbd/aio.c aio_ex->outbuf = TALLOC_ARRAY(aio_ex, char, buflen);
aio_ex 81 source3/smbd/aio.c if (!aio_ex->outbuf) {
aio_ex 82 source3/smbd/aio.c TALLOC_FREE(aio_ex);
aio_ex 85 source3/smbd/aio.c DLIST_ADD(aio_list_head, aio_ex);
aio_ex 86 source3/smbd/aio.c talloc_set_destructor(aio_ex, aio_extra_destructor);
aio_ex 87 source3/smbd/aio.c aio_ex->fsp = fsp;
aio_ex 88 source3/smbd/aio.c return aio_ex;
aio_ex 120 source3/smbd/aio.c struct aio_extra *aio_ex;
aio_ex 160 source3/smbd/aio.c if ((aio_ex = create_aio_extra(fsp, bufsize)) == NULL) {
aio_ex 164 source3/smbd/aio.c aio_ex->handle_completion = handle_aio_read_complete;
aio_ex 166 source3/smbd/aio.c construct_reply_common_req(req, aio_ex->outbuf);
aio_ex 167 source3/smbd/aio.c srv_set_message(aio_ex->outbuf, 12, 0, True);
aio_ex 168 source3/smbd/aio.c SCVAL(aio_ex->outbuf,smb_vwv0,0xFF); /* Never a chained reply. */
aio_ex 170 source3/smbd/aio.c a = &aio_ex->acb;
aio_ex 175 source3/smbd/aio.c a->aio_buf = smb_buf(aio_ex->outbuf);
aio_ex 186 source3/smbd/aio.c TALLOC_FREE(aio_ex);
aio_ex 191 source3/smbd/aio.c aio_ex->req = talloc_move(aio_ex, &req);
aio_ex 196 source3/smbd/aio.c (unsigned int)aio_ex->req->mid ));
aio_ex 198 source3/smbd/aio.c srv_defer_sign_response(aio_ex->req->mid);
aio_ex 212 source3/smbd/aio.c struct aio_extra *aio_ex;
aio_ex 256 source3/smbd/aio.c if (!(aio_ex = create_aio_extra(fsp, bufsize))) {
aio_ex 260 source3/smbd/aio.c aio_ex->handle_completion = handle_aio_write_complete;
aio_ex 262 source3/smbd/aio.c construct_reply_common_req(req, aio_ex->outbuf);
aio_ex 263 source3/smbd/aio.c srv_set_message(aio_ex->outbuf, 6, 0, True);
aio_ex 264 source3/smbd/aio.c SCVAL(aio_ex->outbuf,smb_vwv0,0xFF); /* Never a chained reply. */
aio_ex 266 source3/smbd/aio.c a = &aio_ex->acb;
aio_ex 282 source3/smbd/aio.c TALLOC_FREE(aio_ex);
aio_ex 287 source3/smbd/aio.c aio_ex->req = talloc_move(aio_ex, &req);
aio_ex 297 source3/smbd/aio.c SSVAL(aio_ex->outbuf,smb_vwv2,numtowrite);
aio_ex 298 source3/smbd/aio.c SSVAL(aio_ex->outbuf,smb_vwv4,(numtowrite>>16)&1);
aio_ex 299 source3/smbd/aio.c show_msg(aio_ex->outbuf);
aio_ex 300 source3/smbd/aio.c if (!srv_send_smb(smbd_server_fd(),aio_ex->outbuf,
aio_ex 302 source3/smbd/aio.c &aio_ex->req->pcd)) {
aio_ex 309 source3/smbd/aio.c srv_defer_sign_response(aio_ex->req->mid);
aio_ex 316 source3/smbd/aio.c (unsigned int)aio_ex->req->mid, outstanding_aio_calls ));
aio_ex 327 source3/smbd/aio.c static int handle_aio_read_complete(struct aio_extra *aio_ex, int errcode)
aio_ex 331 source3/smbd/aio.c char *outbuf = aio_ex->outbuf;
aio_ex 333 source3/smbd/aio.c ssize_t nread = SMB_VFS_AIO_RETURN(aio_ex->fsp,&aio_ex->acb);
aio_ex 343 source3/smbd/aio.c aio_ex->fsp->fsp_name, (int)nread, strerror(errcode) ));
aio_ex 356 source3/smbd/aio.c aio_ex->fsp->fh->pos = aio_ex->acb.aio_offset + nread;
aio_ex 357 source3/smbd/aio.c aio_ex->fsp->fh->position_information = aio_ex->fsp->fh->pos;
aio_ex 361 source3/smbd/aio.c aio_ex->fsp->fsp_name,
aio_ex 362 source3/smbd/aio.c (int)aio_ex->acb.aio_nbytes, (int)nread ) );
aio_ex 368 source3/smbd/aio.c IS_CONN_ENCRYPTED(aio_ex->fsp->conn), NULL)) {
aio_ex 375 source3/smbd/aio.c aio_ex->fsp->fsp_name, (double)aio_ex->acb.aio_offset,
aio_ex 386 source3/smbd/aio.c static int handle_aio_write_complete(struct aio_extra *aio_ex, int errcode)
aio_ex 389 source3/smbd/aio.c files_struct *fsp = aio_ex->fsp;
aio_ex 390 source3/smbd/aio.c char *outbuf = aio_ex->outbuf;
aio_ex 391 source3/smbd/aio.c ssize_t numtowrite = aio_ex->acb.aio_nbytes;
aio_ex 392 source3/smbd/aio.c ssize_t nwritten = SMB_VFS_AIO_RETURN(fsp,&aio_ex->acb);
aio_ex 433 source3/smbd/aio.c bool write_through = BITSETW(aio_ex->req->vwv+7,0);
aio_ex 455 source3/smbd/aio.c aio_ex->fsp->fh->pos = aio_ex->acb.aio_offset + nwritten;
aio_ex 466 source3/smbd/aio.c fsp->fsp_name, (double)aio_ex->acb.aio_offset,
aio_ex 477 source3/smbd/aio.c static bool handle_aio_completed(struct aio_extra *aio_ex, int *perr)
aio_ex 481 source3/smbd/aio.c if(!aio_ex) {
aio_ex 487 source3/smbd/aio.c err = SMB_VFS_AIO_ERROR(aio_ex->fsp, &aio_ex->acb);
aio_ex 491 source3/smbd/aio.c aio_ex->req->mid, aio_ex->fsp->fsp_name ));
aio_ex 497 source3/smbd/aio.c " canceled\n", aio_ex->req->mid));
aio_ex 498 source3/smbd/aio.c srv_cancel_sign_response(aio_ex->req->mid, false);
aio_ex 502 source3/smbd/aio.c err = aio_ex->handle_completion(aio_ex, err);
aio_ex 517 source3/smbd/aio.c struct aio_extra *aio_ex = find_aio_ex(mid);
aio_ex 524 source3/smbd/aio.c if (!aio_ex) {
aio_ex 531 source3/smbd/aio.c fsp = aio_ex->fsp;
aio_ex 541 source3/smbd/aio.c if (!handle_aio_completed(aio_ex, &ret)) {
aio_ex 545 source3/smbd/aio.c TALLOC_FREE(aio_ex);
aio_ex 569 source3/smbd/aio.c struct aio_extra *aio_ex;
aio_ex 582 source3/smbd/aio.c for( aio_ex = aio_list_head; aio_ex; aio_ex = aio_ex->next) {
aio_ex 583 source3/smbd/aio.c if (aio_ex->fsp == fsp) {
aio_ex 601 source3/smbd/aio.c for( i = 0, aio_ex = aio_list_head;
aio_ex 602 source3/smbd/aio.c aio_ex;
aio_ex 603 source3/smbd/aio.c aio_ex = aio_ex->next) {
aio_ex 604 source3/smbd/aio.c if (aio_ex->fsp == fsp) {
aio_ex 605 source3/smbd/aio.c aiocb_list[i++] = &aio_ex->acb;
aio_ex 639 source3/smbd/aio.c aio_ex = find_aio_ex(mid);
aio_ex 641 source3/smbd/aio.c if (!aio_ex) {
aio_ex 648 source3/smbd/aio.c if (!handle_aio_completed(aio_ex, &err)) {
aio_ex 651 source3/smbd/aio.c TALLOC_FREE(aio_ex);
aio_ex 674 source3/smbd/aio.c struct aio_extra *aio_ex;
aio_ex 676 source3/smbd/aio.c for( aio_ex = aio_list_head; aio_ex; aio_ex = aio_ex->next) {
aio_ex 677 source3/smbd/aio.c if (aio_ex->fsp == fsp) {
aio_ex 681 source3/smbd/aio.c SMB_VFS_AIO_CANCEL(fsp, &aio_ex->acb);
aio_ex 682 source3/smbd/aio.c aio_ex->fsp = NULL; /* fsp will be closed when we