412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
|
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
|
-
+
-
-
+
-
+
-
-
-
+
+
-
+
-
-
-
+
+
-
+
-
-
+
-
-
-
+
+
-
+
-
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
-
+
-
|
if ((size_t)bytesWritten != length)
@throw [OFWriteFailedException exceptionWithObject: self
requestedLength: length
bytesWritten: bytesWritten
errNo: 0];
}
- (void)asyncSendBuffer: (const void *)buffer
- (void)asyncSendData: (OFData *)data
length: (size_t)length
receiver: (of_socket_address_t)receiver
receiver: (const of_socket_address_t *)receiver
{
[self asyncSendBuffer: buffer
[self asyncSendData: data
length: length
receiver: receiver
runLoopMode: of_run_loop_mode_default];
receiver: receiver
runLoopMode: of_run_loop_mode_default];
}
- (void)asyncSendBuffer: (const void *)buffer
- (void)asyncSendData: (OFData *)data
length: (size_t)length
receiver: (of_socket_address_t)receiver
runLoopMode: (of_run_loop_mode_t)runLoopMode
receiver: (const of_socket_address_t *)receiver
runLoopMode: (of_run_loop_mode_t)runLoopMode
{
[OFRunLoop of_addAsyncSendForUDPSocket: self
buffer: buffer
data: data
length: length
receiver: receiver
mode: runLoopMode
# ifdef OF_HAVE_BLOCKS
block: NULL
# endif
delegate: _delegate];
}
#ifdef OF_HAVE_BLOCKS
- (void)asyncSendBuffer: (const void *)buffer
- (void)asyncSendData: (OFData *)data
length: (size_t)length
receiver: (of_socket_address_t)receiver
block: (of_udp_socket_async_send_block_t)block
receiver: (const of_socket_address_t *)receiver
block: (of_udp_socket_async_send_data_block_t)block
{
[self asyncSendBuffer: buffer
[self asyncSendData: data
length: length
receiver: receiver
runLoopMode: of_run_loop_mode_default
block: block];
receiver: receiver
runLoopMode: of_run_loop_mode_default
block: block];
}
- (void)asyncSendBuffer: (const void *)buffer
- (void)asyncSendData: (OFData *)data
length: (size_t)length
receiver: (of_socket_address_t)receiver
runLoopMode: (of_run_loop_mode_t)runLoopMode
block: (of_udp_socket_async_send_block_t)block
receiver: (const of_socket_address_t *)receiver
runLoopMode: (of_run_loop_mode_t)runLoopMode
block: (of_udp_socket_async_send_data_block_t)block
{
[OFRunLoop of_addAsyncSendForUDPSocket: self
buffer: buffer
data: data
length: length
receiver: receiver
mode: runLoopMode
block: block
delegate: nil];
}
#endif
|