net: easy fix to sendto()
authorBrett Gordon <beretta42@gmail.com>
Tue, 15 Aug 2017 13:45:50 +0000 (09:45 -0400)
committerBrett Gordon <beretta42@gmail.com>
Tue, 15 Aug 2017 13:45:50 +0000 (09:45 -0400)
Kernel/syscall_net.c

index e9353f2..bf05b80 100644 (file)
@@ -573,16 +573,16 @@ arg_t _sendto(void)
        if (s == NULL)
                return -1;
 
-       if (s->state == SS_UNCONNECTED) {
+       if (s->s_state == SS_UNCONNECTED) {
                err = sock_autobind(s);
                if (err)
                        return err;
        }
-       if (s->state < SS_BOUND) {
+       if (s->s_state < SS_BOUND) {
                udata.u_error = EINVAL;
                return -1;
        }
-       if (s->state != SS_BOUND && s->state < SS_CONNECTED) {
+       if (s->s_state != SS_BOUND && s->s_state < SS_CONNECTED) {
                udata.u_error = ENOTCONN;
                return -1;
        }
@@ -594,7 +594,7 @@ arg_t _sendto(void)
        alen = ugetw(&uaddr->sio_flags);
        /* Save the address and then just do a 'write' */
        if (s->s_type != SOCKTYPE_TCP && alen) {
-               if (s->state >= SS_CONNECTING) {
+               if (s->s_state >= SS_CONNECTING) {
                        udata.u_error = EISCONN;
                        return -1;
                }
@@ -606,7 +606,7 @@ arg_t _sendto(void)
                s->s_addr[SADDR_TMP].port = sin.sin_port;
        } else {
                s->s_flag &= ~SFLAG_ATMP;
-               if (s->state < SS_CONNECTED) {
+               if (s->s_state < SS_CONNECTED) {
                        udata.u_error = EDESTADDRREQ;
                        return -1;
                }