Changeset 988 for vendor/current/source4/lib/stream
- Timestamp:
- Nov 24, 2016, 1:14:11 PM (9 years ago)
- Location:
- vendor/current/source4/lib/stream
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/source4/lib/stream/packet.c
r740 r988 252 252 253 253 if (pc->processing) { 254 EVENT_FD_NOT_READABLE(pc->fde);254 TEVENT_FD_NOT_READABLE(pc->fde); 255 255 pc->processing++; 256 256 return; … … 259 259 if (pc->recv_disable) { 260 260 pc->recv_need_enable = true; 261 EVENT_FD_NOT_READABLE(pc->fde);261 TEVENT_FD_NOT_READABLE(pc->fde); 262 262 return; 263 263 } … … 425 425 if (pc->processing) { 426 426 if (pc->processing > 1) { 427 EVENT_FD_READABLE(pc->fde);427 TEVENT_FD_READABLE(pc->fde); 428 428 } 429 429 pc->processing = 0; … … 458 458 } 459 459 460 event_add_timed(pc->ev, pc, timeval_zero(), packet_next_event, pc);460 tevent_add_timer(pc->ev, pc, timeval_zero(), packet_next_event, pc); 461 461 } 462 462 … … 477 477 if (pc->recv_need_enable) { 478 478 pc->recv_need_enable = false; 479 EVENT_FD_READABLE(pc->fde);479 TEVENT_FD_READABLE(pc->fde); 480 480 } 481 481 pc->recv_disable = false; 482 482 if (pc->num_read != 0 && pc->packet_size >= pc->num_read) { 483 event_add_timed(pc->ev, pc, timeval_zero(), packet_next_event, pc);483 tevent_add_timer(pc->ev, pc, timeval_zero(), packet_next_event, pc); 484 484 } 485 485 } … … 524 524 /* we're out of requests to send, so don't wait for write 525 525 events any more */ 526 EVENT_FD_NOT_WRITEABLE(pc->fde);526 TEVENT_FD_NOT_WRITEABLE(pc->fde); 527 527 } 528 528 … … 542 542 NT_STATUS_HAVE_NO_MEMORY(el); 543 543 544 DLIST_ADD_END(pc->send_queue, el , struct send_element *);544 DLIST_ADD_END(pc->send_queue, el); 545 545 el->blob = blob; 546 546 el->nsent = 0; … … 562 562 } 563 563 564 EVENT_FD_WRITEABLE(pc->fde);564 TEVENT_FD_WRITEABLE(pc->fde); 565 565 566 566 return NT_STATUS_OK; … … 584 584 return STATUS_MORE_ENTRIES; 585 585 } 586 *size = 4 + smb_len(blob.data); 586 /* 587 * Note: that we use smb_len_tcp() instead 588 * of smb_len_nbt() as this function is not 589 * used for nbt and the source4 copy 590 * of smb_len() was smb_len_tcp() 591 */ 592 *size = 4 + smb_len_tcp(blob.data); 587 593 if (*size > blob.length) { 588 594 return STATUS_MORE_ENTRIES; … … 607 613 return NT_STATUS_OK; 608 614 } 615 616 _PUBLIC_ NTSTATUS packet_full_request_u16(void *private_data, DATA_BLOB blob, size_t *size) 617 { 618 if (blob.length < 2) { 619 return STATUS_MORE_ENTRIES; 620 } 621 *size = 2 + RSVAL(blob.data, 0); 622 if (*size > blob.length) { 623 return STATUS_MORE_ENTRIES; 624 } 625 return NT_STATUS_OK; 626 } -
vendor/current/source4/lib/stream/packet.h
r740 r988 62 62 NTSTATUS packet_full_request_nbt(void *private_data, DATA_BLOB blob, size_t *size); 63 63 NTSTATUS packet_full_request_u32(void *private_data, DATA_BLOB blob, size_t *size); 64 NTSTATUS packet_full_request_u16(void *private_data, DATA_BLOB blob, size_t *size); 64 65 65 66
Note:
See TracChangeset
for help on using the changeset viewer.