summaryrefslogtreecommitdiffstats
path: root/net/tipc/link.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/link.c')
-rw-r--r--net/tipc/link.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/tipc/link.c b/net/tipc/link.c
index 363da5f85704..6a1a9d9239ae 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -191,6 +191,7 @@ static u32 link_own_addr(struct tipc_link *l)
191 * @session: session to be used by link 191 * @session: session to be used by link
192 * @ownnode: identity of own node 192 * @ownnode: identity of own node
193 * @peer: node id of peer node 193 * @peer: node id of peer node
194 * @peer_caps: bitmap describing peer node capabilities
194 * @maddr: media address to be used 195 * @maddr: media address to be used
195 * @inputq: queue to put messages ready for delivery 196 * @inputq: queue to put messages ready for delivery
196 * @namedq: queue to put binding table update messages ready for delivery 197 * @namedq: queue to put binding table update messages ready for delivery
@@ -201,7 +202,7 @@ static u32 link_own_addr(struct tipc_link *l)
201bool tipc_link_create(struct tipc_node *n, char *if_name, int bearer_id, 202bool tipc_link_create(struct tipc_node *n, char *if_name, int bearer_id,
202 int tolerance, char net_plane, u32 mtu, int priority, 203 int tolerance, char net_plane, u32 mtu, int priority,
203 int window, u32 session, u32 ownnode, u32 peer, 204 int window, u32 session, u32 ownnode, u32 peer,
204 struct tipc_media_addr *maddr, 205 u16 peer_caps, struct tipc_media_addr *maddr,
205 struct sk_buff_head *inputq, struct sk_buff_head *namedq, 206 struct sk_buff_head *inputq, struct sk_buff_head *namedq,
206 struct tipc_link **link) 207 struct tipc_link **link)
207{ 208{
@@ -226,6 +227,7 @@ bool tipc_link_create(struct tipc_node *n, char *if_name, int bearer_id,
226 strcpy((char *)msg_data(hdr), if_name); 227 strcpy((char *)msg_data(hdr), if_name);
227 228
228 l->addr = peer; 229 l->addr = peer;
230 l->peer_caps = peer_caps;
229 l->media_addr = maddr; 231 l->media_addr = maddr;
230 l->owner = n; 232 l->owner = n;
231 l->peer_session = WILDCARD_SESSION; 233 l->peer_session = WILDCARD_SESSION;
@@ -260,6 +262,7 @@ bool tipc_link_create(struct tipc_node *n, char *if_name, int bearer_id,
260 * Returns true if link was created, otherwise false 262 * Returns true if link was created, otherwise false
261 */ 263 */
262bool tipc_link_bc_create(struct tipc_node *n, int mtu, int window, 264bool tipc_link_bc_create(struct tipc_node *n, int mtu, int window,
265 u16 peer_caps,
263 struct sk_buff_head *inputq, 266 struct sk_buff_head *inputq,
264 struct sk_buff_head *namedq, 267 struct sk_buff_head *namedq,
265 struct tipc_link **link) 268 struct tipc_link **link)
@@ -267,7 +270,7 @@ bool tipc_link_bc_create(struct tipc_node *n, int mtu, int window,
267 struct tipc_link *l; 270 struct tipc_link *l;
268 271
269 if (!tipc_link_create(n, "", MAX_BEARERS, 0, 'Z', mtu, 0, window, 272 if (!tipc_link_create(n, "", MAX_BEARERS, 0, 'Z', mtu, 0, window,
270 0, 0, 0, NULL, inputq, namedq, link)) 273 0, 0, 0, peer_caps, NULL, inputq, namedq, link))
271 return false; 274 return false;
272 275
273 l = *link; 276 l = *link;