diff options
Diffstat (limited to 'include/net/ip_vs.h')
-rw-r--r-- | include/net/ip_vs.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h index b7bbd6c28cfa..be2b5690f892 100644 --- a/include/net/ip_vs.h +++ b/include/net/ip_vs.h | |||
@@ -422,6 +422,7 @@ struct ip_vs_conn { | |||
422 | struct ip_vs_seq in_seq; /* incoming seq. struct */ | 422 | struct ip_vs_seq in_seq; /* incoming seq. struct */ |
423 | struct ip_vs_seq out_seq; /* outgoing seq. struct */ | 423 | struct ip_vs_seq out_seq; /* outgoing seq. struct */ |
424 | 424 | ||
425 | const struct ip_vs_pe *pe; | ||
425 | char *pe_data; | 426 | char *pe_data; |
426 | __u8 pe_data_len; | 427 | __u8 pe_data_len; |
427 | }; | 428 | }; |
@@ -814,8 +815,19 @@ void ip_vs_bind_pe(struct ip_vs_service *svc, struct ip_vs_pe *pe); | |||
814 | void ip_vs_unbind_pe(struct ip_vs_service *svc); | 815 | void ip_vs_unbind_pe(struct ip_vs_service *svc); |
815 | int register_ip_vs_pe(struct ip_vs_pe *pe); | 816 | int register_ip_vs_pe(struct ip_vs_pe *pe); |
816 | int unregister_ip_vs_pe(struct ip_vs_pe *pe); | 817 | int unregister_ip_vs_pe(struct ip_vs_pe *pe); |
817 | extern struct ip_vs_pe *ip_vs_pe_get(const char *name); | 818 | struct ip_vs_pe *ip_vs_pe_getbyname(const char *name); |
818 | extern void ip_vs_pe_put(struct ip_vs_pe *pe); | 819 | |
820 | static inline void ip_vs_pe_get(const struct ip_vs_pe *pe) | ||
821 | { | ||
822 | if (pe && pe->module) | ||
823 | __module_get(pe->module); | ||
824 | } | ||
825 | |||
826 | static inline void ip_vs_pe_put(const struct ip_vs_pe *pe) | ||
827 | { | ||
828 | if (pe && pe->module) | ||
829 | module_put(pe->module); | ||
830 | } | ||
819 | 831 | ||
820 | /* | 832 | /* |
821 | * IPVS protocol functions (from ip_vs_proto.c) | 833 | * IPVS protocol functions (from ip_vs_proto.c) |