hc
2024-03-26 e0728245c89800c2038c23308f2d88969d5b41c8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef __HDLC_IOCTL_H__
#define __HDLC_IOCTL_H__
 
 
#define GENERIC_HDLC_VERSION 4    /* For synchronization with sethdlc utility */
 
#define CLOCK_DEFAULT   0    /* Default setting */
#define CLOCK_EXT    1    /* External TX and RX clock - DTE */
#define CLOCK_INT    2    /* Internal TX and RX clock - DCE */
#define CLOCK_TXINT    3    /* Internal TX and external RX clock */
#define CLOCK_TXFROMRX    4    /* TX clock derived from external RX clock */
 
 
#define ENCODING_DEFAULT    0 /* Default setting */
#define ENCODING_NRZ        1
#define ENCODING_NRZI        2
#define ENCODING_FM_MARK    3
#define ENCODING_FM_SPACE    4
#define ENCODING_MANCHESTER    5
 
 
#define PARITY_DEFAULT        0 /* Default setting */
#define PARITY_NONE        1 /* No parity */
#define PARITY_CRC16_PR0    2 /* CRC16, initial value 0x0000 */
#define PARITY_CRC16_PR1    3 /* CRC16, initial value 0xFFFF */
#define PARITY_CRC16_PR0_CCITT    4 /* CRC16, initial 0x0000, ITU-T version */
#define PARITY_CRC16_PR1_CCITT    5 /* CRC16, initial 0xFFFF, ITU-T version */
#define PARITY_CRC32_PR0_CCITT    6 /* CRC32, initial value 0x00000000 */
#define PARITY_CRC32_PR1_CCITT    7 /* CRC32, initial value 0xFFFFFFFF */
 
#define LMI_DEFAULT        0 /* Default setting */
#define LMI_NONE        1 /* No LMI, all PVCs are static */
#define LMI_ANSI        2 /* ANSI Annex D */
#define LMI_CCITT        3 /* ITU-T Annex A */
#define LMI_CISCO        4 /* The "original" LMI, aka Gang of Four */
 
#ifndef __ASSEMBLY__
 
typedef struct {
   unsigned int clock_rate; /* bits per second */
   unsigned int clock_type; /* internal, external, TX-internal etc. */
   unsigned short loopback;
} sync_serial_settings;          /* V.35, V.24, X.21 */
 
typedef struct {
   unsigned int clock_rate; /* bits per second */
   unsigned int clock_type; /* internal, external, TX-internal etc. */
   unsigned short loopback;
   unsigned int slot_map;
} te1_settings;                  /* T1, E1 */
 
typedef struct {
   unsigned short encoding;
   unsigned short parity;
} raw_hdlc_proto;
 
typedef struct {
   unsigned int t391;
   unsigned int t392;
   unsigned int n391;
   unsigned int n392;
   unsigned int n393;
   unsigned short lmi;
   unsigned short dce; /* 1 for DCE (network side) operation */
} fr_proto;
 
typedef struct {
   unsigned int dlci;
} fr_proto_pvc;          /* for creating/deleting FR PVCs */
 
typedef struct {
   unsigned int dlci;
   char master[IFNAMSIZ];    /* Name of master FRAD device */
}fr_proto_pvc_info;        /* for returning PVC information only */
 
typedef struct {
    unsigned int interval;
    unsigned int timeout;
} cisco_proto;
 
typedef struct {
   unsigned short dce; /* 1 for DCE (network side) operation */
   unsigned int modulo; /* modulo (8 = basic / 128 = extended) */
   unsigned int window; /* frame window size */
   unsigned int t1; /* timeout t1 */
   unsigned int t2; /* timeout t2 */
   unsigned int n2; /* frame retry counter */
} x25_hdlc_proto;
 
/* PPP doesn't need any info now - supply length = 0 to ioctl */
 
#endif /* __ASSEMBLY__ */
#endif /* __HDLC_IOCTL_H__ */