Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
rose.h File Reference
#include <linux/rose.h>
#include <net/sock.h>

Go to the source code of this file.

Data Structures

struct  rose_neigh
 
struct  rose_node
 
struct  rose_route
 
struct  rose_sock
 

Macros

#define ROSE_ADDR_LEN   5
 
#define ROSE_MIN_LEN   3
 
#define ROSE_CALL_REQ_ADDR_LEN_OFF   3
 
#define ROSE_CALL_REQ_ADDR_LEN_VAL   0xAA /* each address is 10 digits */
 
#define ROSE_CALL_REQ_DEST_ADDR_OFF   4
 
#define ROSE_CALL_REQ_SRC_ADDR_OFF   9
 
#define ROSE_CALL_REQ_FACILITIES_OFF   14
 
#define ROSE_GFI   0x10
 
#define ROSE_Q_BIT   0x80
 
#define ROSE_D_BIT   0x40
 
#define ROSE_M_BIT   0x10
 
#define ROSE_CALL_REQUEST   0x0B
 
#define ROSE_CALL_ACCEPTED   0x0F
 
#define ROSE_CLEAR_REQUEST   0x13
 
#define ROSE_CLEAR_CONFIRMATION   0x17
 
#define ROSE_DATA   0x00
 
#define ROSE_INTERRUPT   0x23
 
#define ROSE_INTERRUPT_CONFIRMATION   0x27
 
#define ROSE_RR   0x01
 
#define ROSE_RNR   0x05
 
#define ROSE_REJ   0x09
 
#define ROSE_RESET_REQUEST   0x1B
 
#define ROSE_RESET_CONFIRMATION   0x1F
 
#define ROSE_REGISTRATION_REQUEST   0xF3
 
#define ROSE_REGISTRATION_CONFIRMATION   0xF7
 
#define ROSE_RESTART_REQUEST   0xFB
 
#define ROSE_RESTART_CONFIRMATION   0xFF
 
#define ROSE_DIAGNOSTIC   0xF1
 
#define ROSE_ILLEGAL   0xFD
 
#define ROSE_DEFAULT_T0   180000 /* Default T10 T20 value */
 
#define ROSE_DEFAULT_T1   200000 /* Default T11 T21 value */
 
#define ROSE_DEFAULT_T2   180000 /* Default T12 T22 value */
 
#define ROSE_DEFAULT_T3   180000 /* Default T13 T23 value */
 
#define ROSE_DEFAULT_HB   5000 /* Default Holdback value */
 
#define ROSE_DEFAULT_IDLE   0 /* No Activity Timeout - none */
 
#define ROSE_DEFAULT_ROUTING   1 /* Default routing flag */
 
#define ROSE_DEFAULT_FAIL_TIMEOUT   120000 /* Time until link considered usable */
 
#define ROSE_DEFAULT_MAXVC   50 /* Maximum number of VCs per neighbour */
 
#define ROSE_DEFAULT_WINDOW_SIZE   7 /* Default window size */
 
#define ROSE_MODULUS   8
 
#define ROSE_MAX_PACKET_SIZE   251 /* Maximum packet size */
 
#define ROSE_COND_ACK_PENDING   0x01
 
#define ROSE_COND_PEER_RX_BUSY   0x02
 
#define ROSE_COND_OWN_RX_BUSY   0x04
 
#define FAC_NATIONAL   0x00
 
#define FAC_CCITT   0x0F
 
#define FAC_NATIONAL_RAND   0x7F
 
#define FAC_NATIONAL_FLAGS   0x3F
 
#define FAC_NATIONAL_DEST_DIGI   0xE9
 
#define FAC_NATIONAL_SRC_DIGI   0xEB
 
#define FAC_NATIONAL_FAIL_CALL   0xED
 
#define FAC_NATIONAL_FAIL_ADD   0xEE
 
#define FAC_NATIONAL_DIGIS   0xEF
 
#define FAC_CCITT_DEST_NSAP   0xC9
 
#define FAC_CCITT_SRC_NSAP   0xCB
 
#define rose_sk(sk)   ((struct rose_sock *)(sk))
 

Enumerations

enum  {
  ROSE_STATE_0, ROSE_STATE_1, ROSE_STATE_2, ROSE_STATE_3,
  ROSE_STATE_4, ROSE_STATE_5
}
 

Functions

int rosecmp (rose_address *, rose_address *)
 
int rosecmpm (rose_address *, rose_address *, unsigned short)
 
charrose2asc (char *buf, const rose_address *)
 
struct sockrose_find_socket (unsigned int, struct rose_neigh *)
 
void rose_kill_by_neigh (struct rose_neigh *)
 
unsigned int rose_new_lci (struct rose_neigh *)
 
int rose_rx_call_request (struct sk_buff *, struct net_device *, struct rose_neigh *, unsigned int)
 
void rose_destroy_socket (struct sock *)
 
void rose_setup (struct net_device *)
 
int rose_process_rx_frame (struct sock *, struct sk_buff *)
 
void rose_start_ftimer (struct rose_neigh *)
 
void rose_stop_ftimer (struct rose_neigh *)
 
void rose_stop_t0timer (struct rose_neigh *)
 
int rose_ftimer_running (struct rose_neigh *)
 
void rose_link_rx_restart (struct sk_buff *, struct rose_neigh *, unsigned short)
 
void rose_transmit_clear_request (struct rose_neigh *, unsigned int, unsigned char, unsigned char)
 
void rose_transmit_link (struct sk_buff *, struct rose_neigh *)
 
void rose_loopback_init (void)
 
void rose_loopback_clear (void)
 
int rose_loopback_queue (struct sk_buff *, struct rose_neigh *)
 
void rose_kick (struct sock *)
 
void rose_enquiry_response (struct sock *)
 
void rose_add_loopback_neigh (void)
 
int __must_check rose_add_loopback_node (rose_address *)
 
void rose_del_loopback_node (rose_address *)
 
void rose_rt_device_down (struct net_device *)
 
void rose_link_device_down (struct net_device *)
 
struct net_devicerose_dev_first (void)
 
struct net_devicerose_dev_get (rose_address *)
 
struct rose_routerose_route_free_lci (unsigned int, struct rose_neigh *)
 
struct rose_neighrose_get_neigh (rose_address *, unsigned char *, unsigned char *, int)
 
int rose_rt_ioctl (unsigned int, void __user *)
 
void rose_link_failed (ax25_cb *, int)
 
int rose_route_frame (struct sk_buff *, ax25_cb *)
 
void rose_rt_free (void)
 
void rose_clear_queues (struct sock *)
 
void rose_frames_acked (struct sock *, unsigned short)
 
void rose_requeue_frames (struct sock *)
 
int rose_validate_nr (struct sock *, unsigned short)
 
void rose_write_internal (struct sock *, int)
 
int rose_decode (struct sk_buff *, int *, int *, int *, int *, int *)
 
int rose_parse_facilities (unsigned char *, unsigned int, struct rose_facilities_struct *)
 
void rose_disconnect (struct sock *, int, int, int)
 
void rose_start_heartbeat (struct sock *)
 
void rose_start_t1timer (struct sock *)
 
void rose_start_t2timer (struct sock *)
 
void rose_start_t3timer (struct sock *)
 
void rose_start_hbtimer (struct sock *)
 
void rose_start_idletimer (struct sock *)
 
void rose_stop_heartbeat (struct sock *)
 
void rose_stop_timer (struct sock *)
 
void rose_stop_idletimer (struct sock *)
 
void rose_register_sysctl (void)
 
void rose_unregister_sysctl (void)
 

Variables

ax25_address rose_callsign
 
int sysctl_rose_restart_request_timeout
 
int sysctl_rose_call_request_timeout
 
int sysctl_rose_reset_request_timeout
 
int sysctl_rose_clear_request_timeout
 
int sysctl_rose_no_activity_timeout
 
int sysctl_rose_ack_hold_back_timeout
 
int sysctl_rose_routing_control
 
int sysctl_rose_link_fail_timeout
 
int sysctl_rose_maximum_vcs
 
int sysctl_rose_window_size
 
struct rose_neighrose_loopback_neigh
 
struct file_operations rose_neigh_fops
 
struct file_operations rose_nodes_fops
 
struct file_operations rose_routes_fops
 

Macro Definition Documentation

#define FAC_CCITT   0x0F

Definition at line 77 of file rose.h.

#define FAC_CCITT_DEST_NSAP   0xC9

Definition at line 87 of file rose.h.

#define FAC_CCITT_SRC_NSAP   0xCB

Definition at line 88 of file rose.h.

#define FAC_NATIONAL   0x00

Definition at line 76 of file rose.h.

#define FAC_NATIONAL_DEST_DIGI   0xE9

Definition at line 81 of file rose.h.

#define FAC_NATIONAL_DIGIS   0xEF

Definition at line 85 of file rose.h.

#define FAC_NATIONAL_FAIL_ADD   0xEE

Definition at line 84 of file rose.h.

#define FAC_NATIONAL_FAIL_CALL   0xED

Definition at line 83 of file rose.h.

#define FAC_NATIONAL_FLAGS   0x3F

Definition at line 80 of file rose.h.

#define FAC_NATIONAL_RAND   0x7F

Definition at line 79 of file rose.h.

#define FAC_NATIONAL_SRC_DIGI   0xEB

Definition at line 82 of file rose.h.

#define ROSE_ADDR_LEN   5

Definition at line 13 of file rose.h.

#define ROSE_CALL_ACCEPTED   0x0F

Definition at line 29 of file rose.h.

#define ROSE_CALL_REQ_ADDR_LEN_OFF   3

Definition at line 17 of file rose.h.

#define ROSE_CALL_REQ_ADDR_LEN_VAL   0xAA /* each address is 10 digits */

Definition at line 18 of file rose.h.

#define ROSE_CALL_REQ_DEST_ADDR_OFF   4

Definition at line 19 of file rose.h.

#define ROSE_CALL_REQ_FACILITIES_OFF   14

Definition at line 21 of file rose.h.

#define ROSE_CALL_REQ_SRC_ADDR_OFF   9

Definition at line 20 of file rose.h.

#define ROSE_CALL_REQUEST   0x0B

Definition at line 28 of file rose.h.

#define ROSE_CLEAR_CONFIRMATION   0x17

Definition at line 31 of file rose.h.

#define ROSE_CLEAR_REQUEST   0x13

Definition at line 30 of file rose.h.

#define ROSE_COND_ACK_PENDING   0x01

Definition at line 72 of file rose.h.

#define ROSE_COND_OWN_RX_BUSY   0x04

Definition at line 74 of file rose.h.

#define ROSE_COND_PEER_RX_BUSY   0x02

Definition at line 73 of file rose.h.

#define ROSE_D_BIT   0x40

Definition at line 25 of file rose.h.

#define ROSE_DATA   0x00

Definition at line 32 of file rose.h.

#define ROSE_DEFAULT_FAIL_TIMEOUT   120000 /* Time until link considered usable */

Definition at line 65 of file rose.h.

#define ROSE_DEFAULT_HB   5000 /* Default Holdback value */

Definition at line 62 of file rose.h.

#define ROSE_DEFAULT_IDLE   0 /* No Activity Timeout - none */

Definition at line 63 of file rose.h.

#define ROSE_DEFAULT_MAXVC   50 /* Maximum number of VCs per neighbour */

Definition at line 66 of file rose.h.

#define ROSE_DEFAULT_ROUTING   1 /* Default routing flag */

Definition at line 64 of file rose.h.

#define ROSE_DEFAULT_T0   180000 /* Default T10 T20 value */

Definition at line 58 of file rose.h.

#define ROSE_DEFAULT_T1   200000 /* Default T11 T21 value */

Definition at line 59 of file rose.h.

#define ROSE_DEFAULT_T2   180000 /* Default T12 T22 value */

Definition at line 60 of file rose.h.

#define ROSE_DEFAULT_T3   180000 /* Default T13 T23 value */

Definition at line 61 of file rose.h.

#define ROSE_DEFAULT_WINDOW_SIZE   7 /* Default window size */

Definition at line 67 of file rose.h.

#define ROSE_DIAGNOSTIC   0xF1

Definition at line 44 of file rose.h.

#define ROSE_GFI   0x10

Definition at line 23 of file rose.h.

#define ROSE_ILLEGAL   0xFD

Definition at line 45 of file rose.h.

#define ROSE_INTERRUPT   0x23

Definition at line 33 of file rose.h.

#define ROSE_INTERRUPT_CONFIRMATION   0x27

Definition at line 34 of file rose.h.

#define ROSE_M_BIT   0x10

Definition at line 26 of file rose.h.

#define ROSE_MAX_PACKET_SIZE   251 /* Maximum packet size */

Definition at line 70 of file rose.h.

#define ROSE_MIN_LEN   3

Definition at line 15 of file rose.h.

#define ROSE_MODULUS   8

Definition at line 69 of file rose.h.

#define ROSE_Q_BIT   0x80

Definition at line 24 of file rose.h.

#define ROSE_REGISTRATION_CONFIRMATION   0xF7

Definition at line 41 of file rose.h.

#define ROSE_REGISTRATION_REQUEST   0xF3

Definition at line 40 of file rose.h.

#define ROSE_REJ   0x09

Definition at line 37 of file rose.h.

#define ROSE_RESET_CONFIRMATION   0x1F

Definition at line 39 of file rose.h.

#define ROSE_RESET_REQUEST   0x1B

Definition at line 38 of file rose.h.

#define ROSE_RESTART_CONFIRMATION   0xFF

Definition at line 43 of file rose.h.

#define ROSE_RESTART_REQUEST   0xFB

Definition at line 42 of file rose.h.

#define ROSE_RNR   0x05

Definition at line 36 of file rose.h.

#define ROSE_RR   0x01

Definition at line 35 of file rose.h.

#define rose_sk (   sk)    ((struct rose_sock *)(sk))

Definition at line 149 of file rose.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
ROSE_STATE_0 
ROSE_STATE_1 
ROSE_STATE_2 
ROSE_STATE_3 
ROSE_STATE_4 
ROSE_STATE_5 

Definition at line 49 of file rose.h.

Function Documentation

char* rose2asc ( char buf,
const rose_address  
)

Definition at line 95 of file af_rose.c.

void rose_add_loopback_neigh ( void  )

Definition at line 372 of file rose_route.c.

int __must_check rose_add_loopback_node ( rose_address )

Definition at line 406 of file rose_route.c.

void rose_clear_queues ( struct sock )

Definition at line 35 of file rose_subr.c.

int rose_decode ( struct sk_buff ,
int ,
int ,
int ,
int ,
int  
)

Definition at line 201 of file rose_subr.c.

void rose_del_loopback_node ( rose_address )

Definition at line 451 of file rose_route.c.

void rose_destroy_socket ( struct sock sk)

Definition at line 335 of file af_rose.c.

struct net_device* rose_dev_first ( void  )
read

Definition at line 608 of file rose_route.c.

struct net_device* rose_dev_get ( rose_address )
read

Definition at line 626 of file rose_route.c.

void rose_disconnect ( struct sock ,
int  ,
int  ,
int   
)

Definition at line 530 of file rose_subr.c.

void rose_enquiry_response ( struct sock )

Definition at line 112 of file rose_out.c.

struct sock* rose_find_socket ( unsigned  int,
struct rose_neigh  
)
read

Definition at line 278 of file af_rose.c.

void rose_frames_acked ( struct sock ,
unsigned  short 
)

Definition at line 46 of file rose_subr.c.

int rose_ftimer_running ( struct rose_neigh )

Definition at line 71 of file rose_link.c.

struct rose_neigh* rose_get_neigh ( rose_address ,
unsigned char ,
unsigned char ,
int   
)
read

Definition at line 676 of file rose_route.c.

void rose_kick ( struct sock )

Definition at line 48 of file rose_out.c.

void rose_kill_by_neigh ( struct rose_neigh )

Definition at line 165 of file af_rose.c.

void rose_link_device_down ( struct net_device )

Definition at line 838 of file rose_route.c.

void rose_link_failed ( ax25_cb ,
int   
)

Definition at line 812 of file rose_route.c.

void rose_link_rx_restart ( struct sk_buff ,
struct rose_neigh ,
unsigned  short 
)

Definition at line 145 of file rose_link.c.

void rose_loopback_clear ( void  )

Definition at line 114 of file rose_loopback.c.

void rose_loopback_init ( void  )

Definition at line 23 of file rose_loopback.c.

int rose_loopback_queue ( struct sk_buff ,
struct rose_neigh  
)

Definition at line 35 of file rose_loopback.c.

unsigned int rose_new_lci ( struct rose_neigh )

Definition at line 299 of file af_rose.c.

int rose_parse_facilities ( unsigned char ,
unsigned  int,
struct rose_facilities_struct  
)

Definition at line 395 of file rose_subr.c.

int rose_process_rx_frame ( struct sock ,
struct sk_buff  
)

Definition at line 263 of file rose_in.c.

void rose_register_sysctl ( void  )

Definition at line 121 of file sysctl_net_rose.c.

void rose_requeue_frames ( struct sock )

Definition at line 63 of file rose_subr.c.

int rose_route_frame ( struct sk_buff ,
ax25_cb  
)

Definition at line 853 of file rose_route.c.

struct rose_route* rose_route_free_lci ( unsigned  int,
struct rose_neigh  
)
read

Definition at line 661 of file rose_route.c.

void rose_rt_device_down ( struct net_device )

Definition at line 480 of file rose_route.c.

void rose_rt_free ( void  )

Definition at line 1340 of file rose_route.c.

int rose_rt_ioctl ( unsigned  int,
void __user  
)

Definition at line 726 of file rose_route.c.

int rose_rx_call_request ( struct sk_buff ,
struct net_device ,
struct rose_neigh ,
unsigned  int 
)

Definition at line 972 of file af_rose.c.

void rose_setup ( struct net_device )

Definition at line 159 of file rose_dev.c.

void rose_start_ftimer ( struct rose_neigh )

Definition at line 37 of file rose_link.c.

void rose_start_hbtimer ( struct sock )

Definition at line 85 of file rose_timer.c.

void rose_start_heartbeat ( struct sock )

Definition at line 35 of file rose_timer.c.

void rose_start_idletimer ( struct sock )

Definition at line 98 of file rose_timer.c.

void rose_start_t1timer ( struct sock )

Definition at line 46 of file rose_timer.c.

void rose_start_t2timer ( struct sock )

Definition at line 59 of file rose_timer.c.

void rose_start_t3timer ( struct sock )

Definition at line 72 of file rose_timer.c.

void rose_stop_ftimer ( struct rose_neigh )

Definition at line 61 of file rose_link.c.

void rose_stop_heartbeat ( struct sock )

Definition at line 113 of file rose_timer.c.

void rose_stop_idletimer ( struct sock )

Definition at line 123 of file rose_timer.c.

void rose_stop_t0timer ( struct rose_neigh )

Definition at line 66 of file rose_link.c.

void rose_stop_timer ( struct sock )

Definition at line 118 of file rose_timer.c.

void rose_transmit_clear_request ( struct rose_neigh ,
unsigned  int,
unsigned  char,
unsigned  char 
)

Definition at line 238 of file rose_link.c.

void rose_transmit_link ( struct sk_buff ,
struct rose_neigh  
)

Definition at line 264 of file rose_link.c.

void rose_unregister_sysctl ( void  )

Definition at line 126 of file sysctl_net_rose.c.

int rose_validate_nr ( struct sock ,
unsigned  short 
)

Definition at line 85 of file rose_subr.c.

void rose_write_internal ( struct sock ,
int   
)

Definition at line 102 of file rose_subr.c.

int rosecmp ( rose_address ,
rose_address  
)

Definition at line 115 of file af_rose.c.

int rosecmpm ( rose_address ,
rose_address ,
unsigned  short 
)

Definition at line 129 of file af_rose.c.

Variable Documentation

ax25_address rose_callsign

Definition at line 68 of file af_rose.c.

struct rose_neigh* rose_loopback_neigh

Definition at line 49 of file rose_route.c.

struct file_operations rose_neigh_fops
struct file_operations rose_nodes_fops
struct file_operations rose_routes_fops
int sysctl_rose_ack_hold_back_timeout

Definition at line 57 of file af_rose.c.

int sysctl_rose_call_request_timeout

Definition at line 53 of file af_rose.c.

int sysctl_rose_clear_request_timeout

Definition at line 55 of file af_rose.c.

int sysctl_rose_link_fail_timeout

Definition at line 59 of file af_rose.c.

int sysctl_rose_maximum_vcs

Definition at line 60 of file af_rose.c.

int sysctl_rose_no_activity_timeout

Definition at line 56 of file af_rose.c.

int sysctl_rose_reset_request_timeout

Definition at line 54 of file af_rose.c.

int sysctl_rose_restart_request_timeout

Definition at line 52 of file af_rose.c.

int sysctl_rose_routing_control

Definition at line 58 of file af_rose.c.

int sysctl_rose_window_size

Definition at line 61 of file af_rose.c.