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
net
tipc
name_table.h
Go to the documentation of this file.
1
/*
2
* net/tipc/name_table.h: Include file for TIPC name table code
3
*
4
* Copyright (c) 2000-2006, Ericsson AB
5
* Copyright (c) 2004-2005, 2010-2011, Wind River Systems
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions are met:
10
*
11
* 1. Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* 2. Redistributions in binary form must reproduce the above copyright
14
* notice, this list of conditions and the following disclaimer in the
15
* documentation and/or other materials provided with the distribution.
16
* 3. Neither the names of the copyright holders nor the names of its
17
* contributors may be used to endorse or promote products derived from
18
* this software without specific prior written permission.
19
*
20
* Alternatively, this software may be distributed under the terms of the
21
* GNU General Public License ("GPL") version 2 as published by the Free
22
* Software Foundation.
23
*
24
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
25
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
28
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34
* POSSIBILITY OF SUCH DAMAGE.
35
*/
36
37
#ifndef _TIPC_NAME_TABLE_H
38
#define _TIPC_NAME_TABLE_H
39
40
#include "
node_subscr.h
"
41
42
struct
tipc_subscription
;
43
struct
tipc_port_list
;
44
45
/*
46
* TIPC name types reserved for internal TIPC use (both current and planned)
47
*/
48
#define TIPC_ZM_SRV 3
/* zone master service name type */
49
68
struct
publication
{
69
u32
type
;
70
u32
lower
;
71
u32
upper
;
72
u32
scope
;
73
u32
node
;
74
u32
ref
;
75
u32
key
;
76
struct
tipc_node_subscr
subscr
;
77
struct
list_head
local_list
;
78
struct
list_head
pport_list
;
79
struct
list_head
node_list
;
80
struct
list_head
cluster_list
;
81
struct
list_head
zone_list
;
82
};
83
84
85
extern
rwlock_t
tipc_nametbl_lock
;
86
87
struct
sk_buff
*
tipc_nametbl_get
(
const
void
*req_tlv_area,
int
req_tlv_space);
88
u32
tipc_nametbl_translate
(
u32
type
,
u32
instance,
u32
*
node
);
89
int
tipc_nametbl_mc_translate
(
u32
type
,
u32
lower,
u32
upper,
u32
limit
,
90
struct
tipc_port_list
*dports);
91
struct
publication
*
tipc_nametbl_publish
(
u32
type
,
u32
lower
,
u32
upper
,
92
u32
scope
,
u32
port_ref,
u32
key
);
93
int
tipc_nametbl_withdraw
(
u32
type
,
u32
lower
,
u32
ref
,
u32
key
);
94
struct
publication
*
tipc_nametbl_insert_publ
(
u32
type
,
u32
lower
,
u32
upper
,
95
u32
scope
,
u32
node
,
u32
ref
,
u32
key
);
96
struct
publication
*
tipc_nametbl_remove_publ
(
u32
type
,
u32
lower
,
97
u32
node
,
u32
ref
,
u32
key
);
98
void
tipc_nametbl_subscribe
(
struct
tipc_subscription
*
s
);
99
void
tipc_nametbl_unsubscribe
(
struct
tipc_subscription
*
s
);
100
int
tipc_nametbl_init
(
void
);
101
void
tipc_nametbl_stop
(
void
);
102
103
#endif
Generated on Thu Jan 10 2013 15:02:24 for Linux Kernel by
1.8.2