patch-2.1.68 linux/net/rose/af_rose.c
Next file: linux/net/rose/rose_dev.c
Previous file: linux/net/protocols.c
Back to the patch index
Back to the overall index
- Lines: 68
- Date:
Sun Nov 30 14:00:40 1997
- Orig file:
v2.1.67/linux/net/rose/af_rose.c
- Orig date:
Wed Sep 24 20:05:48 1997
diff -u --recursive --new-file v2.1.67/linux/net/rose/af_rose.c linux/net/rose/af_rose.c
@@ -548,6 +548,8 @@
sock_init_data(sock, sk);
+ skb_queue_head_init(&rose->ack_queue);
+
sock->ops = &rose_proto_ops;
sk->protocol = protocol;
sk->mtu = ROSE_MTU; /* 253 */
@@ -555,8 +557,6 @@
init_timer(&rose->timer);
init_timer(&rose->idletimer);
- skb_queue_head_init(&rose->frag_queue);
-
rose->t1 = sysctl_rose_call_request_timeout;
rose->t2 = sysctl_rose_reset_request_timeout;
rose->t3 = sysctl_rose_clear_request_timeout;
@@ -583,6 +583,8 @@
sock_init_data(NULL, sk);
+ skb_queue_head_init(&rose->ack_queue);
+
sk->type = osk->type;
sk->socket = osk->socket;
sk->priority = osk->priority;
@@ -598,8 +600,6 @@
init_timer(&rose->timer);
init_timer(&rose->idletimer);
- skb_queue_head_init(&rose->frag_queue);
-
rose->t1 = osk->protinfo.rose->t1;
rose->t2 = osk->protinfo.rose->t2;
rose->t3 = osk->protinfo.rose->t3;
@@ -1068,7 +1068,9 @@
return -ENOTCONN;
}
- rose_output(sk, skb); /* Shove it onto the queue */
+ skb_queue_tail(&sk->write_queue, skb); /* Shove it onto the queue */
+
+ rose_kick(sk);
return len;
}
@@ -1210,7 +1212,7 @@
return 0;
}
- case SIOCRSL2CALL:
+ case SIOCRSSL2CALL:
if (!suser()) return -EPERM;
if (ax25cmp(&rose_callsign, &null_ax25_address) != 0)
ax25_listen_release(&rose_callsign, NULL);
@@ -1218,6 +1220,11 @@
return -EFAULT;
if (ax25cmp(&rose_callsign, &null_ax25_address) != 0)
ax25_listen_register(&rose_callsign, NULL);
+ return 0;
+
+ case SIOCRSGL2CALL:
+ if (copy_to_user((void *)arg, &rose_callsign, sizeof(ax25_address)))
+ return -EFAULT;
return 0;
case SIOCRSACCEPT:
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov