af_netrom.c (9b37ee75858ce35cf3c0e4724acaf4efabb45687) af_netrom.c (e21ce8c7c013fb223a002c70bb0a547de6c26c12)
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation; either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * Copyright Jonathan Naylor G4KLX (g4klx@g4klx.demon.co.uk)
8 * Copyright Alan Cox GW4PTS (alan@lxorguk.ukuu.org.uk)

--- 42 unchanged lines hidden (view full) ---

51int sysctl_netrom_transport_timeout = NR_DEFAULT_T1;
52int sysctl_netrom_transport_maximum_tries = NR_DEFAULT_N2;
53int sysctl_netrom_transport_acknowledge_delay = NR_DEFAULT_T2;
54int sysctl_netrom_transport_busy_delay = NR_DEFAULT_T4;
55int sysctl_netrom_transport_requested_window_size = NR_DEFAULT_WINDOW;
56int sysctl_netrom_transport_no_activity_timeout = NR_DEFAULT_IDLE;
57int sysctl_netrom_routing_control = NR_DEFAULT_ROUTING;
58int sysctl_netrom_link_fails_count = NR_DEFAULT_FAILS;
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation; either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * Copyright Jonathan Naylor G4KLX (g4klx@g4klx.demon.co.uk)
8 * Copyright Alan Cox GW4PTS (alan@lxorguk.ukuu.org.uk)

--- 42 unchanged lines hidden (view full) ---

51int sysctl_netrom_transport_timeout = NR_DEFAULT_T1;
52int sysctl_netrom_transport_maximum_tries = NR_DEFAULT_N2;
53int sysctl_netrom_transport_acknowledge_delay = NR_DEFAULT_T2;
54int sysctl_netrom_transport_busy_delay = NR_DEFAULT_T4;
55int sysctl_netrom_transport_requested_window_size = NR_DEFAULT_WINDOW;
56int sysctl_netrom_transport_no_activity_timeout = NR_DEFAULT_IDLE;
57int sysctl_netrom_routing_control = NR_DEFAULT_ROUTING;
58int sysctl_netrom_link_fails_count = NR_DEFAULT_FAILS;
59int sysctl_netrom_reset_circuit = NR_DEFAULT_RESET;
59
60static unsigned short circuit = 0x101;
61
62static HLIST_HEAD(nr_list);
63static DEFINE_SPINLOCK(nr_list_lock);
64
65static struct proto_ops nr_proto_ops;
66

--- 836 unchanged lines hidden (view full) ---

903 }
904
905 /*
906 * Now it should be a CONNREQ.
907 */
908 if (frametype != NR_CONNREQ) {
909 /*
910 * Here it would be nice to be able to send a reset but
60
61static unsigned short circuit = 0x101;
62
63static HLIST_HEAD(nr_list);
64static DEFINE_SPINLOCK(nr_list_lock);
65
66static struct proto_ops nr_proto_ops;
67

--- 836 unchanged lines hidden (view full) ---

904 }
905
906 /*
907 * Now it should be a CONNREQ.
908 */
909 if (frametype != NR_CONNREQ) {
910 /*
911 * Here it would be nice to be able to send a reset but
911 * NET/ROM doesn't have one. The following hack would
912 * have been a way to extend the protocol but apparently
913 * it kills BPQ boxes... :-(
912 * NET/ROM doesn't have one. We've tried to extend the protocol
913 * by sending NR_CONNACK | NR_CHOKE_FLAGS replies but that
914 * apparently kills BPQ boxes... :-(
915 * So now we try to follow the established behaviour of
916 * G8PZT's Xrouter which is sending packets with command type 7
917 * as an extension of the protocol.
914 */
918 */
915#if 0
916 /*
917 * Never reply to a CONNACK/CHOKE.
918 */
919 if (frametype != NR_CONNACK || flags != NR_CHOKE_FLAG)
920 nr_transmit_refusal(skb, 1);
921#endif
919 if (sysctl_netrom_reset_circuit &&
920 (frametype != NR_RESET || flags != 0))
921 nr_transmit_reset(skb, 1);
922
922 return 0;
923 }
924
925 sk = nr_find_listener(dest);
926
927 user = (ax25_address *)(skb->data + 21);
928
929 if (sk == NULL || sk_acceptq_is_full(sk) ||

--- 557 unchanged lines hidden ---
923 return 0;
924 }
925
926 sk = nr_find_listener(dest);
927
928 user = (ax25_address *)(skb->data + 21);
929
930 if (sk == NULL || sk_acceptq_is_full(sk) ||

--- 557 unchanged lines hidden ---