ssize_t send(int sockfd, const void *buf, size_t len, int flags) { bw_bytes += len; if (bw_mustDrop()) return len; printf("bytes sent: %d\n",len); return __libc_send(sockfd, buf, len, flags); }
ssize_t __sock_send_r(int fd, const void *buf, size_t len, int flags) { ssize_t ret = -1; pthread_cleanup_push_defer_np(__sock_putuser, &fd); if (__sock_getuser(fd)) { if ((ret = __sock_send(fd, buf, len, flags)) == -1) pthread_testcancel(); __sock_putuser(&fd); } else { if ((ret = __libc_send(fd, buf, len, flags)) == -1) pthread_testcancel(); } pthread_cleanup_pop_restore_np(0); return (ret); }