done:
isc_nm_read_stop(handle);
- if (ccmsg->reading) {
- ccmsg->reading = false;
- ccmsg->recv_cb(handle, eresult, ccmsg->recv_cbarg);
- }
+ ccmsg->recv_cb(handle, eresult, ccmsg->recv_cbarg);
return;
}
ccmsg->recv_cbarg = cbarg;
ccmsg->length_received = false;
- ccmsg->reading = true;
isc_nm_read(ccmsg->handle, recv_data, ccmsg);
}
ccmsg->send_cb(handle, eresult, ccmsg->send_cbarg);
ccmsg->send_cb = NULL;
- if (eresult != ISC_R_SUCCESS && ccmsg->reading) {
- recv_data(handle, eresult, NULL, ccmsg);
- }
-
isc_nmhandle_detach(&handle);
}
REQUIRE(VALID_CCMSG(ccmsg));
if (ccmsg->handle != NULL) {
+ isc_nm_read_stop(ccmsg->handle);
isc_nmhandle_close(ccmsg->handle);
isc_nmhandle_detach(&ccmsg->handle);
}