]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/kern/uipc_socket.c
xnu-7195.60.75.tar.gz
[apple/xnu.git] / bsd / kern / uipc_socket.c
index 607af6d3c5aba890df75bbf09b4240c933bc4e38..e1a5241a2ddb1f81f65e81a85bf531ef84a529ac 100644 (file)
@@ -2497,9 +2497,7 @@ sosend(struct socket *so, struct sockaddr *addr, struct uio *uio,
                                if (error) {
                                        if (error == EJUSTRETURN) {
                                                error = 0;
-                                               clen = 0;
-                                               control = NULL;
-                                               top = NULL;
+                                               goto packet_consumed;
                                        }
                                        goto out_locked;
                                }
@@ -2523,6 +2521,7 @@ sosend(struct socket *so, struct sockaddr *addr, struct uio *uio,
                        error = (*so->so_proto->pr_usrreqs->pru_send)
                            (so, sendflags, top, addr, control, p);
 
+packet_consumed:
                        if (dontroute) {
                                so->so_options &= ~SO_DONTROUTE;
                        }