/linux-4.4.14/net/ax25/ |
D | ax25_std_in.c | 42 static int ax25_std_state1_machine(ax25_cb *ax25, struct sk_buff *skb, int frametype, int pf, int t… in ax25_std_state1_machine() argument 46 ax25->modulus = AX25_MODULUS; in ax25_std_state1_machine() 47 ax25->window = ax25->ax25_dev->values[AX25_VALUES_WINDOW]; in ax25_std_state1_machine() 48 ax25_send_control(ax25, AX25_UA, pf, AX25_RESPONSE); in ax25_std_state1_machine() 52 ax25->modulus = AX25_EMODULUS; in ax25_std_state1_machine() 53 ax25->window = ax25->ax25_dev->values[AX25_VALUES_EWINDOW]; in ax25_std_state1_machine() 54 ax25_send_control(ax25, AX25_UA, pf, AX25_RESPONSE); in ax25_std_state1_machine() 58 ax25_send_control(ax25, AX25_DM, pf, AX25_RESPONSE); in ax25_std_state1_machine() 63 ax25_calculate_rtt(ax25); in ax25_std_state1_machine() 64 ax25_stop_t1timer(ax25); in ax25_std_state1_machine() [all …]
|
D | ax25_ds_in.c | 35 static int ax25_ds_state1_machine(ax25_cb *ax25, struct sk_buff *skb, int frametype, int pf, int ty… in ax25_ds_state1_machine() argument 39 ax25->modulus = AX25_MODULUS; in ax25_ds_state1_machine() 40 ax25->window = ax25->ax25_dev->values[AX25_VALUES_WINDOW]; in ax25_ds_state1_machine() 41 ax25_send_control(ax25, AX25_UA, pf, AX25_RESPONSE); in ax25_ds_state1_machine() 45 ax25->modulus = AX25_EMODULUS; in ax25_ds_state1_machine() 46 ax25->window = ax25->ax25_dev->values[AX25_VALUES_EWINDOW]; in ax25_ds_state1_machine() 47 ax25_send_control(ax25, AX25_UA, pf, AX25_RESPONSE); in ax25_ds_state1_machine() 51 ax25_send_control(ax25, AX25_DM, pf, AX25_RESPONSE); in ax25_ds_state1_machine() 55 ax25_calculate_rtt(ax25); in ax25_ds_state1_machine() 56 ax25_stop_t1timer(ax25); in ax25_ds_state1_machine() [all …]
|
D | ax25_std_timer.c | 32 void ax25_std_heartbeat_expiry(ax25_cb *ax25) in ax25_std_heartbeat_expiry() argument 34 struct sock *sk = ax25->sk; in ax25_std_heartbeat_expiry() 39 switch (ax25->state) { in ax25_std_heartbeat_expiry() 48 ax25_destroy_socket(ax25); in ax25_std_heartbeat_expiry() 52 ax25_destroy_socket(ax25); in ax25_std_heartbeat_expiry() 65 (ax25->condition & AX25_COND_OWN_RX_BUSY)) { in ax25_std_heartbeat_expiry() 66 ax25->condition &= ~AX25_COND_OWN_RX_BUSY; in ax25_std_heartbeat_expiry() 67 ax25->condition &= ~AX25_COND_ACK_PENDING; in ax25_std_heartbeat_expiry() 68 ax25_send_control(ax25, AX25_RR, AX25_POLLOFF, AX25_RESPONSE); in ax25_std_heartbeat_expiry() 77 ax25_start_heartbeat(ax25); in ax25_std_heartbeat_expiry() [all …]
|
D | ax25_timer.c | 42 void ax25_setup_timers(ax25_cb *ax25) in ax25_setup_timers() argument 44 setup_timer(&ax25->timer, ax25_heartbeat_expiry, (unsigned long)ax25); in ax25_setup_timers() 45 setup_timer(&ax25->t1timer, ax25_t1timer_expiry, (unsigned long)ax25); in ax25_setup_timers() 46 setup_timer(&ax25->t2timer, ax25_t2timer_expiry, (unsigned long)ax25); in ax25_setup_timers() 47 setup_timer(&ax25->t3timer, ax25_t3timer_expiry, (unsigned long)ax25); in ax25_setup_timers() 48 setup_timer(&ax25->idletimer, ax25_idletimer_expiry, in ax25_setup_timers() 49 (unsigned long)ax25); in ax25_setup_timers() 52 void ax25_start_heartbeat(ax25_cb *ax25) in ax25_start_heartbeat() argument 54 mod_timer(&ax25->timer, jiffies + 5 * HZ); in ax25_start_heartbeat() 57 void ax25_start_t1timer(ax25_cb *ax25) in ax25_start_t1timer() argument [all …]
|
D | ax25_ds_timer.c | 72 ax25_cb *ax25; in ax25_ds_timeout() local 83 ax25_for_each(ax25, &ax25_list) { in ax25_ds_timeout() 84 if (ax25->ax25_dev != ax25_dev || !(ax25->condition & AX25_COND_DAMA_MODE)) in ax25_ds_timeout() 87 ax25_send_control(ax25, AX25_DISC, AX25_POLLON, AX25_COMMAND); in ax25_ds_timeout() 88 ax25_disconnect(ax25, ETIMEDOUT); in ax25_ds_timeout() 95 void ax25_ds_heartbeat_expiry(ax25_cb *ax25) in ax25_ds_heartbeat_expiry() argument 97 struct sock *sk=ax25->sk; in ax25_ds_heartbeat_expiry() 102 switch (ax25->state) { in ax25_ds_heartbeat_expiry() 112 ax25_destroy_socket(ax25); in ax25_ds_heartbeat_expiry() 116 ax25_destroy_socket(ax25); in ax25_ds_heartbeat_expiry() [all …]
|
D | ax25_out.c | 38 ax25_cb *ax25; in ax25_send_frame() local 54 if ((ax25 = ax25_find_cb(src, dest, digi, dev)) != NULL) { in ax25_send_frame() 55 ax25_output(ax25, paclen, skb); in ax25_send_frame() 56 return ax25; /* It already existed */ in ax25_send_frame() 62 if ((ax25 = ax25_create_cb()) == NULL) in ax25_send_frame() 65 ax25_fillin_cb(ax25, ax25_dev); in ax25_send_frame() 67 ax25->source_addr = *src; in ax25_send_frame() 68 ax25->dest_addr = *dest; in ax25_send_frame() 71 ax25->digipeat = kmemdup(digi, sizeof(*digi), GFP_ATOMIC); in ax25_send_frame() 72 if (ax25->digipeat == NULL) { in ax25_send_frame() [all …]
|
D | ax25_subr.c | 36 void ax25_clear_queues(ax25_cb *ax25) in ax25_clear_queues() argument 38 skb_queue_purge(&ax25->write_queue); in ax25_clear_queues() 39 skb_queue_purge(&ax25->ack_queue); in ax25_clear_queues() 40 skb_queue_purge(&ax25->reseq_queue); in ax25_clear_queues() 41 skb_queue_purge(&ax25->frag_queue); in ax25_clear_queues() 49 void ax25_frames_acked(ax25_cb *ax25, unsigned short nr) in ax25_frames_acked() argument 56 if (ax25->va != nr) { in ax25_frames_acked() 57 while (skb_peek(&ax25->ack_queue) != NULL && ax25->va != nr) { in ax25_frames_acked() 58 skb = skb_dequeue(&ax25->ack_queue); in ax25_frames_acked() 60 ax25->va = (ax25->va + 1) % ax25->modulus; in ax25_frames_acked() [all …]
|
D | ax25_std_subr.c | 33 void ax25_std_nr_error_recovery(ax25_cb *ax25) in ax25_std_nr_error_recovery() argument 35 ax25_std_establish_data_link(ax25); in ax25_std_nr_error_recovery() 38 void ax25_std_establish_data_link(ax25_cb *ax25) in ax25_std_establish_data_link() argument 40 ax25->condition = 0x00; in ax25_std_establish_data_link() 41 ax25->n2count = 0; in ax25_std_establish_data_link() 43 if (ax25->modulus == AX25_MODULUS) in ax25_std_establish_data_link() 44 ax25_send_control(ax25, AX25_SABM, AX25_POLLON, AX25_COMMAND); in ax25_std_establish_data_link() 46 ax25_send_control(ax25, AX25_SABME, AX25_POLLON, AX25_COMMAND); in ax25_std_establish_data_link() 48 ax25_calculate_t1(ax25); in ax25_std_establish_data_link() 49 ax25_stop_idletimer(ax25); in ax25_std_establish_data_link() [all …]
|
D | af_ax25.c | 66 static void ax25_cb_del(ax25_cb *ax25) in ax25_cb_del() argument 68 if (!hlist_unhashed(&ax25->ax25_node)) { in ax25_cb_del() 70 hlist_del_init(&ax25->ax25_node); in ax25_cb_del() 72 ax25_cb_put(ax25); in ax25_cb_del() 143 void ax25_cb_add(ax25_cb *ax25) in ax25_cb_add() argument 146 ax25_cb_hold(ax25); in ax25_cb_add() 147 hlist_add_head(&ax25->ax25_node, &ax25_list); in ax25_cb_add() 273 ax25_cb *ax25=(ax25_cb *)data; in ax25_destroy_timer() local 276 sk=ax25->sk; in ax25_destroy_timer() 280 ax25_destroy_socket(ax25); in ax25_destroy_timer() [all …]
|
D | ax25_ds_subr.c | 31 void ax25_ds_nr_error_recovery(ax25_cb *ax25) in ax25_ds_nr_error_recovery() argument 33 ax25_ds_establish_data_link(ax25); in ax25_ds_nr_error_recovery() 39 void ax25_ds_enquiry_response(ax25_cb *ax25) in ax25_ds_enquiry_response() argument 66 ax25_std_enquiry_response(ax25); in ax25_ds_enquiry_response() 68 if (!(ax25->condition & AX25_COND_PEER_RX_BUSY)) { in ax25_ds_enquiry_response() 69 ax25_requeue_frames(ax25); in ax25_ds_enquiry_response() 70 ax25_kick(ax25); in ax25_ds_enquiry_response() 73 …if (ax25->state == AX25_STATE_1 || ax25->state == AX25_STATE_2 || skb_peek(&ax25->ack_queue) != NU… in ax25_ds_enquiry_response() 74 ax25_ds_t1_timeout(ax25); in ax25_ds_enquiry_response() 76 ax25->n2count = 0; in ax25_ds_enquiry_response() [all …]
|
D | ax25_in.c | 37 static int ax25_rx_fragment(ax25_cb *ax25, struct sk_buff *skb) in ax25_rx_fragment() argument 41 if (ax25->fragno != 0) { in ax25_rx_fragment() 43 if ((ax25->fragno - 1) == (*skb->data & AX25_SEG_REM)) { in ax25_rx_fragment() 45 ax25->fragno = *skb->data & AX25_SEG_REM; in ax25_rx_fragment() 47 ax25->fraglen += skb->len; in ax25_rx_fragment() 48 skb_queue_tail(&ax25->frag_queue, skb); in ax25_rx_fragment() 51 if (ax25->fragno == 0) { in ax25_rx_fragment() 53 ax25->fraglen, in ax25_rx_fragment() 56 skb_queue_purge(&ax25->frag_queue); in ax25_rx_fragment() 62 skbn->dev = ax25->ax25_dev->dev; in ax25_rx_fragment() [all …]
|
D | Makefile | 5 obj-$(CONFIG_AX25) += ax25.o 7 ax25-y := ax25_addr.o ax25_dev.o ax25_iface.o ax25_in.o ax25_ip.o ax25_out.o \ 10 ax25-$(CONFIG_AX25_DAMA_SLAVE) += ax25_ds_in.o ax25_ds_subr.o ax25_ds_timer.o 11 ax25-$(CONFIG_SYSCTL) += sysctl_net_ax25.o
|
D | ax25_route.c | 411 int ax25_rt_autobind(ax25_cb *ax25, ax25_address *addr) in ax25_rt_autobind() argument 420 if ((ax25->ax25_dev = ax25_dev_ax25dev(ax25_rt->dev)) == NULL) { in ax25_rt_autobind() 427 ax25->source_addr = user->call; in ax25_rt_autobind() 434 ax25->source_addr = *(ax25_address *)ax25->ax25_dev->dev->dev_addr; in ax25_rt_autobind() 438 ax25->digipeat = kmemdup(ax25_rt->digipeat, sizeof(ax25_digi), in ax25_rt_autobind() 440 if (ax25->digipeat == NULL) { in ax25_rt_autobind() 444 ax25_adjust_path(addr, ax25->digipeat); in ax25_rt_autobind() 447 if (ax25->sk != NULL) { in ax25_rt_autobind() 448 bh_lock_sock(ax25->sk); in ax25_rt_autobind() 449 sock_reset_flag(ax25->sk, SOCK_ZAPPED); in ax25_rt_autobind() [all …]
|
D | ax25_ip.c | 111 ax25_cb *ax25; in ax25_ip_xmit() local 175 ax25=ax25_send_frame( in ax25_ip_xmit() 180 if (ax25) { in ax25_ip_xmit() 181 ax25_cb_put(ax25); in ax25_ip_xmit()
|
D | Kconfig | 12 <http://www.linux-ax25.org/>. 42 check out the file <file:Documentation/networking/ax25.txt> in the 48 module will be called ax25. 63 <http://www.linux-ax25.org>. If unsure, say Y. 89 <http://www.linux-ax25.org>. You also might want to check out the 90 file <file:Documentation/networking/ax25.txt>. More information about 108 <http://www.linux-ax25.org>. You also might want to check out the 109 file <file:Documentation/networking/ax25.txt>. More information about
|
D | ax25_iface.c | 193 void ax25_link_failed(ax25_cb *ax25, int reason) in ax25_link_failed() argument 199 lf->func(ax25, reason); in ax25_link_failed()
|
/linux-4.4.14/net/netrom/ |
D | nr_route.c | 88 ax25_address *ax25, ax25_digi *ax25_digi, struct net_device *dev, in nr_add_node() argument 104 nr_neigh = nr_neigh_get_dev(ax25, dev); in nr_add_node() 143 nr_neigh->callsign = *ax25; in nr_add_node() 145 nr_neigh->ax25 = NULL; in nr_add_node() 172 if (quality != 0 && ax25cmp(nr, ax25) == 0 && !nr_neigh->locked) in nr_add_node() 427 nr_neigh->ax25 = NULL; in nr_add_neigh() 733 void nr_link_failed(ax25_cb *ax25, int reason) in nr_link_failed() argument 740 if (s->ax25 == ax25) { in nr_link_failed() 751 nr_neigh->ax25 = NULL; in nr_link_failed() 752 ax25_cb_put(ax25); in nr_link_failed() [all …]
|
/linux-4.4.14/net/rose/ |
D | rose_link.c | 110 ax25s = neigh->ax25; in rose_send_frame() 111 neigh->ax25 = ax25_send_frame(skb, 260, rose_call, &neigh->callsign, neigh->digipeat, neigh->dev); in rose_send_frame() 115 return neigh->ax25 != NULL; in rose_send_frame() 133 ax25s = neigh->ax25; in rose_link_up() 134 neigh->ax25 = ax25_find_cb(rose_call, &neigh->callsign, neigh->digipeat, neigh->dev); in rose_link_up() 138 return neigh->ax25 != NULL; in rose_link_up()
|
D | rose_route.c | 96 rose_neigh->ax25 = NULL; in rose_add_node() 240 if (rose_neigh->ax25) in rose_remove_neigh() 241 ax25_cb_put(rose_neigh->ax25); in rose_remove_neigh() 250 if (rose_neigh->ax25) in rose_remove_neigh() 251 ax25_cb_put(rose_neigh->ax25); in rose_remove_neigh() 382 sn->ax25 = NULL; in rose_add_loopback_neigh() 811 void rose_link_failed(ax25_cb *ax25, int reason) in rose_link_failed() argument 818 if (rose_neigh->ax25 == ax25) in rose_link_failed() 824 rose_neigh->ax25 = NULL; in rose_link_failed() 825 ax25_cb_put(ax25); in rose_link_failed() [all …]
|
/linux-4.4.14/include/net/ |
D | ax25.h | 169 #define ax25_uid_hold(ax25) \ argument 170 atomic_inc(&((ax25)->refcount)) 271 static __inline__ void ax25_cb_put(ax25_cb *ax25) in ax25_cb_put() argument 273 if (atomic_dec_and_test(&ax25->refcount)) { in ax25_cb_put() 274 kfree(ax25->digipeat); in ax25_cb_put() 275 kfree(ax25); in ax25_cb_put()
|
D | netrom.h | 89 ax25_cb *ax25; member 136 if (nr_neigh->ax25) in nr_neigh_put() 137 ax25_cb_put(nr_neigh->ax25); in nr_neigh_put()
|
D | rose.h | 94 ax25_cb *ax25; member
|
/linux-4.4.14/drivers/net/hamradio/ |
D | Kconfig | 76 <http://www.linux-ax25.org/wiki/Ax25-tools>. Please be sure to 127 utility available in the standard ax25 utilities package. For 144 the driver, use the sethdlc utility available in the standard ax25 160 available in the standard ax25 utilities package. For information on 175 in the standard ax25 utilities package. For information on the
|
/linux-4.4.14/Documentation/networking/ |
D | ax25.txt | 4 found on http://www.linux-ax25.org.
|
D | z8530drv.txt | 9 2. ftp://ftp.pspt.fi/pub/ham/linux/ax25/z8530drv-utils_3.0-3.tar.gz 304 ifconfig scc0 44.128.1.1 hw ax25 dl0tha-7 311 ax25-utils and the AX.25-HOWTO to learn how to set the parameters of 320 you actually use it or not. First setup your /etc/ax25/axports, 328 ifconfig scc3 44.128.1.1 hw ax25 dl0tha-9 344 ifconfig scc3 hw ax25 dl0tha-9 416 the kissparms program from the ax25-utils package or use the program
|
D | baycom.txt | 83 sethdlc from the ax25 utilities may be used to set driver states etc. 85 in the ax25 utilities package) to convert packets of a network interface
|
D | 00-INDEX | 33 ax25.txt
|
/linux-4.4.14/net/ |
D | Makefile | 31 obj-$(CONFIG_AX25) += ax25/
|
D | Kconfig | 349 source "net/ax25/Kconfig"
|
/linux-4.4.14/Documentation/isdn/ |
D | README.x25 | 144 ftp://ftp.hes.iki.fi/pub/ham/linux/ax25/x25utils-* 145 (don't confuse the x25-utils with the ax25-utils)
|
/linux-4.4.14/Documentation/sysctl/ |
D | net.txt | 24 802 E802 protocol ax25 AX25
|
/linux-4.4.14/include/uapi/linux/ |
D | Kbuild | 65 header-y += ax25.h
|
/linux-4.4.14/ |
D | MAINTAINERS | 2058 W: http://www.linux-ax25.org/ 2060 F: include/uapi/linux/ax25.h 2061 F: include/net/ax25.h 2062 F: net/ax25/ 3283 F: net/ax25/af_ax25.c 3284 F: net/ax25/ax25_dev.c 3285 F: net/ax25/ax25_ds_* 3286 F: net/ax25/ax25_in.c 3287 F: net/ax25/ax25_out.c 3288 F: net/ax25/ax25_timer.c [all …]
|
D | CREDITS | 838 D: ax25-utils maintainer.
|