vport.h (8f0aad6f35f7e8b3118b7b8a65e8e76b135cc4cb) vport.h (12eb18f7115884b0c1513dda31b0051121116b3a)
1/*
2 * Copyright (c) 2007-2012 Nicira, Inc.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of version 2 of the GNU General Public
6 * License as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful, but

--- 31 unchanged lines hidden (view full) ---

40};
41
42int ovs_vport_init(void);
43void ovs_vport_exit(void);
44
45struct vport *ovs_vport_add(const struct vport_parms *);
46void ovs_vport_del(struct vport *);
47
1/*
2 * Copyright (c) 2007-2012 Nicira, Inc.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of version 2 of the GNU General Public
6 * License as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful, but

--- 31 unchanged lines hidden (view full) ---

40};
41
42int ovs_vport_init(void);
43void ovs_vport_exit(void);
44
45struct vport *ovs_vport_add(const struct vport_parms *);
46void ovs_vport_del(struct vport *);
47
48struct vport *ovs_vport_locate(struct net *net, const char *name);
48struct vport *ovs_vport_locate(const struct net *net, const char *name);
49
50void ovs_vport_get_stats(struct vport *, struct ovs_vport_stats *);
51
52int ovs_vport_set_options(struct vport *, struct nlattr *options);
53int ovs_vport_get_options(const struct vport *, struct sk_buff *);
54
49
50void ovs_vport_get_stats(struct vport *, struct ovs_vport_stats *);
51
52int ovs_vport_set_options(struct vport *, struct nlattr *options);
53int ovs_vport_get_options(const struct vport *, struct sk_buff *);
54
55int ovs_vport_set_upcall_portids(struct vport *, struct nlattr *pids);
55int ovs_vport_set_upcall_portids(struct vport *, const struct nlattr *pids);
56int ovs_vport_get_upcall_portids(const struct vport *, struct sk_buff *);
57u32 ovs_vport_find_upcall_portid(const struct vport *, struct sk_buff *);
58
59int ovs_vport_send(struct vport *, struct sk_buff *);
60
61int ovs_tunnel_get_egress_info(struct ovs_tunnel_info *egress_tun_info,
62 struct net *net,
63 const struct ovs_tunnel_info *tun_info,

--- 155 unchanged lines hidden (view full) ---

219 * private data area.
220 */
221static inline struct vport *vport_from_priv(void *priv)
222{
223 return (struct vport *)((u8 *)priv - ALIGN(sizeof(struct vport), VPORT_ALIGN));
224}
225
226void ovs_vport_receive(struct vport *, struct sk_buff *,
56int ovs_vport_get_upcall_portids(const struct vport *, struct sk_buff *);
57u32 ovs_vport_find_upcall_portid(const struct vport *, struct sk_buff *);
58
59int ovs_vport_send(struct vport *, struct sk_buff *);
60
61int ovs_tunnel_get_egress_info(struct ovs_tunnel_info *egress_tun_info,
62 struct net *net,
63 const struct ovs_tunnel_info *tun_info,

--- 155 unchanged lines hidden (view full) ---

219 * private data area.
220 */
221static inline struct vport *vport_from_priv(void *priv)
222{
223 return (struct vport *)((u8 *)priv - ALIGN(sizeof(struct vport), VPORT_ALIGN));
224}
225
226void ovs_vport_receive(struct vport *, struct sk_buff *,
227 struct ovs_tunnel_info *);
227 const struct ovs_tunnel_info *);
228
229static inline void ovs_skb_postpush_rcsum(struct sk_buff *skb,
230 const void *start, unsigned int len)
231{
232 if (skb->ip_summed == CHECKSUM_COMPLETE)
233 skb->csum = csum_add(skb->csum, csum_partial(start, len, 0));
234}
235
236int ovs_vport_ops_register(struct vport_ops *ops);
237void ovs_vport_ops_unregister(struct vport_ops *ops);
238
239#endif /* vport.h */
228
229static inline void ovs_skb_postpush_rcsum(struct sk_buff *skb,
230 const void *start, unsigned int len)
231{
232 if (skb->ip_summed == CHECKSUM_COMPLETE)
233 skb->csum = csum_add(skb->csum, csum_partial(start, len, 0));
234}
235
236int ovs_vport_ops_register(struct vport_ops *ops);
237void ovs_vport_ops_unregister(struct vport_ops *ops);
238
239#endif /* vport.h */