OpenCores
URL https://opencores.org/ocsvn/or1k_old/or1k_old/trunk

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [rc203soc/] [sw/] [uClinux/] [include/] [linux/] [rose.h] - Diff between revs 1765 and 1782

Only display areas with differences | Details | Blame | View Log

Rev 1765 Rev 1782
/*
/*
 * These are the public elements of the Linux kernel Rose implementation.
 * These are the public elements of the Linux kernel Rose implementation.
 * For kernel AX.25 see the file ax25.h. This file requires ax25.h for the
 * For kernel AX.25 see the file ax25.h. This file requires ax25.h for the
 * definition of the ax25_address structure.
 * definition of the ax25_address structure.
 */
 */
 
 
#ifndef ROSE_KERNEL_H
#ifndef ROSE_KERNEL_H
#define ROSE_KERNEL_H
#define ROSE_KERNEL_H
 
 
#define ROSE_MTU        251
#define ROSE_MTU        251
 
 
#define ROSE_MAX_DIGIS 6
#define ROSE_MAX_DIGIS 6
 
 
#define ROSE_DEFER      1
#define ROSE_DEFER      1
#define ROSE_T1         2
#define ROSE_T1         2
#define ROSE_T2         3
#define ROSE_T2         3
#define ROSE_T3         4
#define ROSE_T3         4
#define ROSE_IDLE       5
#define ROSE_IDLE       5
#define ROSE_QBITINCL   6
#define ROSE_QBITINCL   6
#define ROSE_HOLDBACK   7
#define ROSE_HOLDBACK   7
 
 
#define SIOCRSGCAUSE            (SIOCPROTOPRIVATE+0)
#define SIOCRSGCAUSE            (SIOCPROTOPRIVATE+0)
#define SIOCRSSCAUSE            (SIOCPROTOPRIVATE+1)
#define SIOCRSSCAUSE            (SIOCPROTOPRIVATE+1)
#define SIOCRSL2CALL            (SIOCPROTOPRIVATE+2)
#define SIOCRSL2CALL            (SIOCPROTOPRIVATE+2)
#define SIOCRSSL2CALL           (SIOCPROTOPRIVATE+2)
#define SIOCRSSL2CALL           (SIOCPROTOPRIVATE+2)
#define SIOCRSACCEPT            (SIOCPROTOPRIVATE+3)
#define SIOCRSACCEPT            (SIOCPROTOPRIVATE+3)
#define SIOCRSCLRRT                     (SIOCPROTOPRIVATE+4)
#define SIOCRSCLRRT                     (SIOCPROTOPRIVATE+4)
#define SIOCRSGL2CALL           (SIOCPROTOPRIVATE+5)
#define SIOCRSGL2CALL           (SIOCPROTOPRIVATE+5)
#define SIOCRSGFACILITIES       (SIOCPROTOPRIVATE+6)
#define SIOCRSGFACILITIES       (SIOCPROTOPRIVATE+6)
 
 
#define ROSE_DTE_ORIGINATED     0x00
#define ROSE_DTE_ORIGINATED     0x00
#define ROSE_NUMBER_BUSY        0x01
#define ROSE_NUMBER_BUSY        0x01
#define ROSE_INVALID_FACILITY   0x03
#define ROSE_INVALID_FACILITY   0x03
#define ROSE_NETWORK_CONGESTION 0x05
#define ROSE_NETWORK_CONGESTION 0x05
#define ROSE_OUT_OF_ORDER       0x09
#define ROSE_OUT_OF_ORDER       0x09
#define ROSE_ACCESS_BARRED      0x0B
#define ROSE_ACCESS_BARRED      0x0B
#define ROSE_NOT_OBTAINABLE     0x0D
#define ROSE_NOT_OBTAINABLE     0x0D
#define ROSE_REMOTE_PROCEDURE   0x11
#define ROSE_REMOTE_PROCEDURE   0x11
#define ROSE_LOCAL_PROCEDURE    0x13
#define ROSE_LOCAL_PROCEDURE    0x13
#define ROSE_SHIP_ABSENT        0x39
#define ROSE_SHIP_ABSENT        0x39
 
 
typedef struct {
typedef struct {
        char                    rose_addr[5];
        char                    rose_addr[5];
} rose_address;
} rose_address;
 
 
struct sockaddr_rose {
struct sockaddr_rose {
        unsigned short  srose_family;
        unsigned short  srose_family;
        rose_address    srose_addr;
        rose_address    srose_addr;
        ax25_address    srose_call;
        ax25_address    srose_call;
        unsigned int    srose_ndigis;
        unsigned int    srose_ndigis;
        ax25_address    srose_digi;
        ax25_address    srose_digi;
};
};
 
 
struct full_sockaddr_rose {
struct full_sockaddr_rose {
        unsigned short  srose_family;
        unsigned short  srose_family;
        rose_address    srose_addr;
        rose_address    srose_addr;
        ax25_address    srose_call;
        ax25_address    srose_call;
        unsigned int    srose_ndigis;
        unsigned int    srose_ndigis;
        ax25_address    srose_digis[ROSE_MAX_DIGIS];
        ax25_address    srose_digis[ROSE_MAX_DIGIS];
};
};
 
 
struct rose_route_struct {
struct rose_route_struct {
        rose_address    address;
        rose_address    address;
        unsigned short  mask;
        unsigned short  mask;
        ax25_address    neighbour;
        ax25_address    neighbour;
        char                    device[16];
        char                    device[16];
        unsigned char   ndigis;
        unsigned char   ndigis;
        ax25_address    digipeaters[AX25_MAX_DIGIS];
        ax25_address    digipeaters[AX25_MAX_DIGIS];
};
};
 
 
struct rose_cause_struct {
struct rose_cause_struct {
        unsigned char   cause;
        unsigned char   cause;
        unsigned char   diagnostic;
        unsigned char   diagnostic;
};
};
 
 
struct rose_facilities_struct {
struct rose_facilities_struct {
        rose_address    source_addr,   dest_addr;
        rose_address    source_addr,   dest_addr;
        ax25_address    source_call,   dest_call;
        ax25_address    source_call,   dest_call;
        unsigned char   source_ndigis, dest_ndigis;
        unsigned char   source_ndigis, dest_ndigis;
        ax25_address    source_digis[ROSE_MAX_DIGIS];
        ax25_address    source_digis[ROSE_MAX_DIGIS];
        ax25_address    dest_digis[ROSE_MAX_DIGIS];
        ax25_address    dest_digis[ROSE_MAX_DIGIS];
        unsigned int    rand;
        unsigned int    rand;
        rose_address    fail_addr;
        rose_address    fail_addr;
        ax25_address    fail_call;
        ax25_address    fail_call;
};
};
 
 
 
 
#endif
#endif
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.