Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

net/ax25.h File Reference

#include <linux/config.h>
#include <linux/ax25.h>
#include <linux/netdevice.h>
#include <linux/sysctl.h>
#include <net/ax25call.h>

Include dependency graph for net/ax25.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define AX25_T1CLAMPLO   1
#define AX25_T1CLAMPHI   (30 * HZ)
#define AX25_BPQ_HEADER_LEN   16
#define AX25_KISS_HEADER_LEN   1
#define AX25_HEADER_LEN   17
#define AX25_ADDR_LEN   7
#define AX25_DIGI_HEADER_LEN   (AX25_MAX_DIGIS * AX25_ADDR_LEN)
#define AX25_MAX_HEADER_LEN   (AX25_HEADER_LEN + AX25_DIGI_HEADER_LEN)
#define AX25_P_ROSE   0x01
#define AX25_P_IP   0xCC
#define AX25_P_ARP   0xCD
#define AX25_P_TEXT   0xF0
#define AX25_P_NETROM   0xCF
#define AX25_P_SEGMENT   0x08
#define AX25_SEG_REM   0x7F
#define AX25_SEG_FIRST   0x80
#define AX25_CBIT   0x80
#define AX25_EBIT   0x01
#define AX25_HBIT   0x80
#define AX25_SSSID_SPARE   0x60
#define AX25_ESSID_SPARE   0x20
#define AX25_DAMA_FLAG   0x20
#define AX25_COND_ACK_PENDING   0x01
#define AX25_COND_REJECT   0x02
#define AX25_COND_PEER_RX_BUSY   0x04
#define AX25_COND_OWN_RX_BUSY   0x08
#define AX25_COND_DAMA_MODE   0x10
#define AX25_I   0x00
#define AX25_S   0x01
#define AX25_RR   0x01
#define AX25_RNR   0x05
#define AX25_REJ   0x09
#define AX25_U   0x03
#define AX25_SABM   0x2f
#define AX25_SABME   0x6f
#define AX25_DISC   0x43
#define AX25_DM   0x0f
#define AX25_UA   0x63
#define AX25_FRMR   0x87
#define AX25_UI   0x03
#define AX25_PF   0x10
#define AX25_EPF   0x01
#define AX25_ILLEGAL   0x100
#define AX25_POLLOFF   0
#define AX25_POLLON   1
#define AX25_COMMAND   1
#define AX25_RESPONSE   2
#define AX25_MODULUS   8
#define AX25_EMODULUS   128
#define AX25_DEF_IPDEFMODE   0
#define AX25_DEF_AXDEFMODE   0
#define AX25_DEF_BACKOFF   1
#define AX25_DEF_CONMODE   2
#define AX25_DEF_WINDOW   2
#define AX25_DEF_EWINDOW   32
#define AX25_DEF_T1   (10 * HZ)
#define AX25_DEF_T2   (3 * HZ)
#define AX25_DEF_T3   (300 * HZ)
#define AX25_DEF_N2   10
#define AX25_DEF_IDLE   (0 * 60 * HZ)
#define AX25_DEF_PACLEN   256
#define AX25_DEF_PROTOCOL   AX25_PROTO_STD_SIMPLEX
#define AX25_DEF_DS_TIMEOUT   (3 * 60 * HZ)

Typedefs

typedef ax25_uid_assoc ax25_uid_assoc
typedef ax25_route ax25_route
typedef ax25_dev ax25_dev
typedef ax25_cb ax25_cb

Enumerations

enum  {
  AX25_STATE_0, AX25_STATE_1, AX25_STATE_2, AX25_STATE_3,
  AX25_STATE_4
}
enum  { AX25_PROTO_STD_SIMPLEX, AX25_PROTO_STD_DUPLEX, AX25_PROTO_DAMA_SLAVE, AX25_PROTO_DAMA_MASTER }
enum  {
  AX25_VALUES_IPDEFMODE, AX25_VALUES_AXDEFMODE, AX25_VALUES_BACKOFF, AX25_VALUES_CONMODE,
  AX25_VALUES_WINDOW, AX25_VALUES_EWINDOW, AX25_VALUES_T1, AX25_VALUES_T2,
  AX25_VALUES_T3, AX25_VALUES_IDLE, AX25_VALUES_N2, AX25_VALUES_PACLEN,
  AX25_VALUES_PROTOCOL, AX25_VALUES_DS_TIMEOUT, AX25_MAX_VALUES
}

Functions

void ax25_free_cb (ax25_cb *)
void ax25_insert_socket (ax25_cb *)
sockax25_find_listener (ax25_address *, int, struct device *, int)
sockax25_find_socket (ax25_address *, ax25_address *, int)
ax25_cbax25_find_cb (ax25_address *, ax25_address *, ax25_digi *, struct device *)
sockax25_addr_match (ax25_address *)
void ax25_send_to_raw (struct sock *, struct sk_buff *, int)
void ax25_destroy_socket (ax25_cb *)
ax25_cbax25_create_cb (void)
void ax25_fillin_cb (ax25_cb *, ax25_dev *)
int ax25_create (struct socket *, int)
sockax25_make_new (struct sock *, struct ax25_dev *)
char * ax2asc (ax25_address *)
ax25_addressasc2ax (char *)
int ax25cmp (ax25_address *, ax25_address *)
int ax25digicmp (ax25_digi *, ax25_digi *)
unsigned char * ax25_addr_parse (unsigned char *, int, ax25_address *, ax25_address *, ax25_digi *, int *, int *)
int ax25_addr_build (unsigned char *, ax25_address *, ax25_address *, ax25_digi *, int, int)
int ax25_addr_size (ax25_digi *)
void ax25_digi_invert (ax25_digi *, ax25_digi *)
ax25_devax25_dev_ax25dev (struct device *)
ax25_devax25_addr_ax25dev (ax25_address *)
void ax25_dev_device_up (struct device *)
void ax25_dev_device_down (struct device *)
int ax25_fwd_ioctl (unsigned int, struct ax25_fwd_struct *)
device * ax25_fwd_dev (struct device *)
void ax25_dev_free (void)
int ax25_ds_frame_in (ax25_cb *, struct sk_buff *, int)
void ax25_ds_nr_error_recovery (ax25_cb *)
void ax25_ds_enquiry_response (ax25_cb *)
void ax25_ds_establish_data_link (ax25_cb *)
void ax25_dev_dama_on (ax25_dev *)
void ax25_dev_dama_off (ax25_dev *)
void ax25_dama_on (ax25_cb *)
void ax25_dama_off (ax25_cb *)
void ax25_ds_set_timer (ax25_dev *)
void ax25_ds_del_timer (ax25_dev *)
void ax25_ds_timer (ax25_cb *)
void ax25_ds_t1_timeout (ax25_cb *)
void ax25_ds_heartbeat_expiry (ax25_cb *)
void ax25_ds_t3timer_expiry (ax25_cb *)
void ax25_ds_idletimer_expiry (ax25_cb *)
int ax25_protocol_register (unsigned int, int(*)(struct sk_buff *, ax25_cb *))
void ax25_protocol_release (unsigned int)
int ax25_linkfail_register (void(*)(ax25_cb *, int))
void ax25_linkfail_release (void(*)(ax25_cb *, int))
int ax25_listen_register (ax25_address *, struct device *)
void ax25_listen_release (ax25_address *, struct device *)
int ax25_listen_mine (ax25_address *, struct device *)
void ax25_link_failed (ax25_cb *, int)
int ax25_protocol_is_registered (unsigned int)
int ax25_rx_iframe (ax25_cb *, struct sk_buff *)
int ax25_kiss_rcv (struct sk_buff *, struct device *, struct packet_type *)
int ax25_encapsulate (struct sk_buff *, struct device *, unsigned short, void *, void *, unsigned int)
int ax25_rebuild_header (struct sk_buff *)
ax25_cbax25_send_frame (struct sk_buff *, int, ax25_address *, ax25_address *, ax25_digi *, struct device *)
void ax25_output (ax25_cb *, int, struct sk_buff *)
void ax25_kick (ax25_cb *)
void ax25_transmit_buffer (ax25_cb *, struct sk_buff *, int)
void ax25_queue_xmit (struct sk_buff *)
int ax25_check_iframes_acked (ax25_cb *, unsigned short)
void ax25_rt_device_down (struct device *)
int ax25_rt_ioctl (unsigned int, void *)
int ax25_rt_get_info (char *, char **, off_t, int, int)
int ax25_rt_autobind (ax25_cb *, ax25_address *)
ax25_routeax25_rt_find_route (ax25_address *, struct device *)
sk_buffax25_rt_build_path (struct sk_buff *, ax25_address *, ax25_address *, ax25_digi *)
void ax25_rt_free (void)
int ax25_std_frame_in (ax25_cb *, struct sk_buff *, int)
void ax25_std_nr_error_recovery (ax25_cb *)
void ax25_std_establish_data_link (ax25_cb *)
void ax25_std_transmit_enquiry (ax25_cb *)
void ax25_std_enquiry_response (ax25_cb *)
void ax25_std_timeout_response (ax25_cb *)
void ax25_std_heartbeat_expiry (ax25_cb *)
void ax25_std_t1timer_expiry (ax25_cb *)
void ax25_std_t2timer_expiry (ax25_cb *)
void ax25_std_t3timer_expiry (ax25_cb *)
void ax25_std_idletimer_expiry (ax25_cb *)
void ax25_clear_queues (ax25_cb *)
void ax25_frames_acked (ax25_cb *, unsigned short)
void ax25_requeue_frames (ax25_cb *)
int ax25_validate_nr (ax25_cb *, unsigned short)
int ax25_decode (ax25_cb *, struct sk_buff *, int *, int *, int *)
void ax25_send_control (ax25_cb *, int, int, int)
void ax25_return_dm (struct device *, ax25_address *, ax25_address *, ax25_digi *)
void ax25_calculate_t1 (ax25_cb *)
void ax25_calculate_rtt (ax25_cb *)
void ax25_disconnect (ax25_cb *, int)
void ax25_start_heartbeat (ax25_cb *)
void ax25_start_t1timer (ax25_cb *)
void ax25_start_t2timer (ax25_cb *)
void ax25_start_t3timer (ax25_cb *)
void ax25_start_idletimer (ax25_cb *)
void ax25_stop_heartbeat (ax25_cb *)
void ax25_stop_t1timer (ax25_cb *)
void ax25_stop_t2timer (ax25_cb *)
void ax25_stop_t3timer (ax25_cb *)
void ax25_stop_idletimer (ax25_cb *)
int ax25_t1timer_running (ax25_cb *)
unsigned long ax25_display_timer (struct timer_list *)
ax25_addressax25_findbyuid (uid_t)
int ax25_uid_ioctl (int, struct sockaddr_ax25 *)
int ax25_uid_get_info (char *, char **, off_t, int, int)
void ax25_uid_free (void)
void ax25_register_sysctl (void)
void ax25_unregister_sysctl (void)

Variables

ax25_cb *volatile ax25_list
ax25_address null_ax25_address
ax25_devax25_dev_list
int(*)(struct sk_buff *, ax25_cb *) ax25_protocol_function (unsigned int)
int ax25_uid_policy


Define Documentation

#define AX25_ADDR_LEN   7
 

Definition at line 19 of file net/ax25.h.

Referenced by ax25_disp_ioctl(), ax25_init(), ax_set_dev_mac_address(), ax_set_mac_address(), baycom_probe(), bpq_new_device(), hdlcdrv_probe(), scc_net_init(), sixpack_init(), sixpack_ioctl(), sp_set_dev_mac_address(), and sp_set_mac_address().

#define AX25_BPQ_HEADER_LEN   16
 

Definition at line 15 of file net/ax25.h.

Referenced by baycom_probe(), bpq_new_device(), bpq_xmit(), hdlcdrv_probe(), and scc_net_init().

#define AX25_CBIT   0x80
 

Definition at line 35 of file net/ax25.h.

#define AX25_COMMAND   1
 

Definition at line 79 of file net/ax25.h.

#define AX25_COND_ACK_PENDING   0x01
 

Definition at line 43 of file net/ax25.h.

#define AX25_COND_DAMA_MODE   0x10
 

Definition at line 47 of file net/ax25.h.

#define AX25_COND_OWN_RX_BUSY   0x08
 

Definition at line 46 of file net/ax25.h.

#define AX25_COND_PEER_RX_BUSY   0x04
 

Definition at line 45 of file net/ax25.h.

#define AX25_COND_REJECT   0x02
 

Definition at line 44 of file net/ax25.h.

#define AX25_DAMA_FLAG   0x20
 

Definition at line 41 of file net/ax25.h.

#define AX25_DEF_AXDEFMODE   0
 

Definition at line 121 of file net/ax25.h.

#define AX25_DEF_BACKOFF   1
 

Definition at line 122 of file net/ax25.h.

#define AX25_DEF_CONMODE   2
 

Definition at line 123 of file net/ax25.h.

#define AX25_DEF_DS_TIMEOUT   (3 * 60 * HZ)
 

Definition at line 133 of file net/ax25.h.

#define AX25_DEF_EWINDOW   32
 

Definition at line 125 of file net/ax25.h.

#define AX25_DEF_IDLE   (0 * 60 * HZ)
 

Definition at line 130 of file net/ax25.h.

#define AX25_DEF_IPDEFMODE   0
 

Definition at line 120 of file net/ax25.h.

#define AX25_DEF_N2   10
 

Definition at line 129 of file net/ax25.h.

#define AX25_DEF_PACLEN   256
 

Definition at line 131 of file net/ax25.h.

Referenced by baycom_probe(), bpq_new_device(), hdlcdrv_probe(), and scc_net_init().

#define AX25_DEF_PROTOCOL   AX25_PROTO_STD_SIMPLEX
 

Definition at line 132 of file net/ax25.h.

#define AX25_DEF_T1   (10 * HZ)
 

Definition at line 126 of file net/ax25.h.

#define AX25_DEF_T2   (3 * HZ)
 

Definition at line 127 of file net/ax25.h.

#define AX25_DEF_T3   (300 * HZ)
 

Definition at line 128 of file net/ax25.h.

#define AX25_DEF_WINDOW   2
 

Definition at line 124 of file net/ax25.h.

#define AX25_DIGI_HEADER_LEN   (AX25_MAX_DIGIS * AX25_ADDR_LEN)
 

Definition at line 20 of file net/ax25.h.

#define AX25_DISC   0x43
 

Definition at line 64 of file net/ax25.h.

#define AX25_DM   0x0f
 

Definition at line 65 of file net/ax25.h.

#define AX25_EBIT   0x01
 

Definition at line 36 of file net/ax25.h.

#define AX25_EMODULUS   128
 

Definition at line 93 of file net/ax25.h.

#define AX25_EPF   0x01
 

Definition at line 71 of file net/ax25.h.

#define AX25_ESSID_SPARE   0x20
 

Definition at line 40 of file net/ax25.h.

#define AX25_FRMR   0x87
 

Definition at line 67 of file net/ax25.h.

#define AX25_HBIT   0x80
 

Definition at line 37 of file net/ax25.h.

#define AX25_HEADER_LEN   17
 

Definition at line 18 of file net/ax25.h.

#define AX25_I   0x00
 

Definition at line 56 of file net/ax25.h.

#define AX25_ILLEGAL   0x100
 

Definition at line 73 of file net/ax25.h.

#define AX25_KISS_HEADER_LEN   1
 

Definition at line 16 of file net/ax25.h.

Referenced by ax25_disp_ioctl(), and sixpack_ioctl().

#define AX25_MAX_HEADER_LEN   (AX25_HEADER_LEN + AX25_DIGI_HEADER_LEN)
 

Definition at line 21 of file net/ax25.h.

Referenced by ax25_disp_ioctl(), baycom_probe(), bpq_new_device(), hdlcdrv_probe(), scc_net_init(), sixpack_init(), and sixpack_ioctl().

#define AX25_MODULUS   8
 

Definition at line 92 of file net/ax25.h.

#define AX25_P_ARP   0xCD
 

Definition at line 26 of file net/ax25.h.

#define AX25_P_IP   0xCC
 

Definition at line 25 of file net/ax25.h.

Referenced by arp_rcv(), arp_send(), and rarp_rcv().

#define AX25_P_NETROM   0xCF
 

Definition at line 28 of file net/ax25.h.

#define AX25_P_ROSE   0x01
 

Definition at line 24 of file net/ax25.h.

#define AX25_P_SEGMENT   0x08
 

Definition at line 29 of file net/ax25.h.

#define AX25_P_TEXT   0xF0
 

Definition at line 27 of file net/ax25.h.

#define AX25_PF   0x10
 

Definition at line 70 of file net/ax25.h.

#define AX25_POLLOFF   0
 

Definition at line 75 of file net/ax25.h.

#define AX25_POLLON   1
 

Definition at line 76 of file net/ax25.h.

#define AX25_REJ   0x09
 

Definition at line 60 of file net/ax25.h.

#define AX25_RESPONSE   2
 

Definition at line 80 of file net/ax25.h.

#define AX25_RNR   0x05
 

Definition at line 59 of file net/ax25.h.

#define AX25_RR   0x01
 

Definition at line 58 of file net/ax25.h.

#define AX25_S   0x01
 

Definition at line 57 of file net/ax25.h.

#define AX25_SABM   0x2f
 

Definition at line 62 of file net/ax25.h.

#define AX25_SABME   0x6f
 

Definition at line 63 of file net/ax25.h.

#define AX25_SEG_FIRST   0x80
 

Definition at line 33 of file net/ax25.h.

#define AX25_SEG_REM   0x7F
 

Definition at line 32 of file net/ax25.h.

#define AX25_SSSID_SPARE   0x60
 

Definition at line 39 of file net/ax25.h.

#define AX25_T1CLAMPHI   (30 * HZ)
 

Definition at line 13 of file net/ax25.h.

#define AX25_T1CLAMPLO   1
 

Definition at line 12 of file net/ax25.h.

#define AX25_U   0x03
 

Definition at line 61 of file net/ax25.h.

#define AX25_UA   0x63
 

Definition at line 66 of file net/ax25.h.

#define AX25_UI   0x03
 

Definition at line 68 of file net/ax25.h.


Typedef Documentation

typedef struct ax25_cb ax25_cb
 

typedef struct ax25_dev ax25_dev
 

typedef struct ax25_route ax25_route
 

typedef struct ax25_uid_assoc ax25_uid_assoc
 


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
AX25_STATE_0 
AX25_STATE_1 
AX25_STATE_2 
AX25_STATE_3 
AX25_STATE_4 

Definition at line 84 of file net/ax25.h.

anonymous enum
 

Enumeration values:
AX25_PROTO_STD_SIMPLEX 
AX25_PROTO_STD_DUPLEX 
AX25_PROTO_DAMA_SLAVE 
AX25_PROTO_DAMA_MASTER 

Definition at line 95 of file net/ax25.h.

anonymous enum
 

Enumeration values:
AX25_VALUES_IPDEFMODE 
AX25_VALUES_AXDEFMODE 
AX25_VALUES_BACKOFF 
AX25_VALUES_CONMODE 
AX25_VALUES_WINDOW 
AX25_VALUES_EWINDOW 
AX25_VALUES_T1 
AX25_VALUES_T2 
AX25_VALUES_T3 
AX25_VALUES_IDLE 
AX25_VALUES_N2 
AX25_VALUES_PACLEN 
AX25_VALUES_PROTOCOL 
AX25_VALUES_DS_TIMEOUT 
AX25_MAX_VALUES 

Definition at line 102 of file net/ax25.h.


Function Documentation

ax25_address* asc2ax char *   ) 
 

ax25_dev* ax25_addr_ax25dev ax25_address  ) 
 

int ax25_addr_build unsigned char *  ,
ax25_address ,
ax25_address ,
ax25_digi ,
int  ,
int 
 

struct sock* ax25_addr_match ax25_address  ) 
 

unsigned char* ax25_addr_parse unsigned char *  ,
int  ,
ax25_address ,
ax25_address ,
ax25_digi ,
int *  ,
int * 
 

int ax25_addr_size ax25_digi  ) 
 

void ax25_calculate_rtt ax25_cb  ) 
 

void ax25_calculate_t1 ax25_cb  ) 
 

int ax25_check_iframes_acked ax25_cb ,
unsigned  short
 

void ax25_clear_queues ax25_cb  ) 
 

int ax25_create struct socket *  ,
int 
 

ax25_cb* ax25_create_cb void   ) 
 

void ax25_dama_off ax25_cb  ) 
 

void ax25_dama_on ax25_cb  ) 
 

int ax25_decode ax25_cb ,
struct sk_buff ,
int *  ,
int *  ,
int * 
 

void ax25_destroy_socket ax25_cb  ) 
 

ax25_dev* ax25_dev_ax25dev struct device *   ) 
 

void ax25_dev_dama_off ax25_dev  ) 
 

void ax25_dev_dama_on ax25_dev  ) 
 

void ax25_dev_device_down struct device *   ) 
 

void ax25_dev_device_up struct device *   ) 
 

void ax25_dev_free void   ) 
 

void ax25_digi_invert ax25_digi ,
ax25_digi
 

void ax25_disconnect ax25_cb ,
int 
 

unsigned long ax25_display_timer struct timer_list  ) 
 

void ax25_ds_del_timer