Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
include
net
irda
af_irda.h
Go to the documentation of this file.
1
/*********************************************************************
2
*
3
* Filename: af_irda.h
4
* Version: 1.0
5
* Description: IrDA sockets declarations
6
* Status: Stable
7
* Author: Dag Brattli <
[email protected]
>
8
* Created at: Tue Dec 9 21:13:12 1997
9
* Modified at: Fri Jan 28 13:16:32 2000
10
* Modified by: Dag Brattli <
[email protected]
>
11
*
12
* Copyright (c) 1998-2000 Dag Brattli, All Rights Reserved.
13
* Copyright (c) 2000-2002 Jean Tourrilhes <
[email protected]
>
14
*
15
* This program is free software; you can redistribute it and/or
16
* modify it under the terms of the GNU General Public License as
17
* published by the Free Software Foundation; either version 2 of
18
* the License, or (at your option) any later version.
19
*
20
* Neither Dag Brattli nor University of Tromsø admit liability nor
21
* provide warranty for any of this software. This material is
22
* provided "AS-IS" and at no charge.
23
*
24
********************************************************************/
25
26
#ifndef AF_IRDA_H
27
#define AF_IRDA_H
28
29
#include <
linux/irda.h
>
30
#include <
net/irda/irda.h
>
31
#include <
net/irda/iriap.h
>
/* struct iriap_cb */
32
#include <
net/irda/irias_object.h
>
/* struct ias_value */
33
#include <
net/irda/irlmp.h
>
/* struct lsap_cb */
34
#include <
net/irda/irttp.h
>
/* struct tsap_cb */
35
#include <
net/irda/discovery.h
>
/* struct discovery_t */
36
#include <
net/sock.h
>
37
38
/* IrDA Socket */
39
struct
irda_sock
{
40
/* struct sock has to be the first member of irda_sock */
41
struct
sock
sk
;
42
__u32
saddr
;
/* my local address */
43
__u32
daddr
;
/* peer address */
44
45
struct
lsap_cb
*
lsap
;
/* LSAP used by Ultra */
46
__u8
pid
;
/* Protocol IP (PID) used by Ultra */
47
48
struct
tsap_cb
*
tsap
;
/* TSAP used by this connection */
49
__u8
dtsap_sel
;
/* remote TSAP address */
50
__u8
stsap_sel
;
/* local TSAP address */
51
52
__u32
max_sdu_size_rx
;
53
__u32
max_sdu_size_tx
;
54
__u32
max_data_size
;
55
__u8
max_header_size
;
56
struct
qos_info
qos_tx
;
57
58
__u16_host_order
mask
;
/* Hint bits mask */
59
__u16_host_order
hints
;
/* Hint bits */
60
61
void
*
ckey
;
/* IrLMP client handle */
62
void
*
skey
;
/* IrLMP service handle */
63
64
struct
ias_object
*
ias_obj
;
/* Our service name + lsap in IAS */
65
struct
iriap_cb
*
iriap
;
/* Used to query remote IAS */
66
struct
ias_value
*
ias_result
;
/* Result of remote IAS query */
67
68
hashbin_t
*
cachelog
;
/* Result of discovery query */
69
__u32
cachedaddr
;
/* Result of selective discovery query */
70
71
int
nslots
;
/* Number of slots to use for discovery */
72
73
int
errno
;
/* status of the IAS query */
74
75
wait_queue_head_t
query_wait
;
/* Wait for the answer to a query */
76
struct
timer_list
watchdog
;
/* Timeout for discovery */
77
78
LOCAL_FLOW
tx_flow
;
79
LOCAL_FLOW
rx_flow
;
80
};
81
82
static
inline
struct
irda_sock
*irda_sk(
struct
sock
*
sk
)
83
{
84
return
(
struct
irda_sock
*)
sk
;
85
}
86
87
#endif
/* AF_IRDA_H */
Generated on Thu Jan 10 2013 14:53:07 for Linux Kernel by
1.8.2