Messages in this thread Patch in this message | | | From | Nigel Cunningham <> | Subject | [Suspend2][ 13/13] [Suspend2] Netlink header. | Date | Tue, 27 Jun 2006 14:40:07 +1000 |
| |
Header file describing userspace helper data, generic message numbers and exported functions.
Signed-off-by: Nigel Cunningham <nigel@suspend2.net>
kernel/power/netlink.h | 59 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 59 insertions(+), 0 deletions(-)
diff --git a/kernel/power/netlink.h b/kernel/power/netlink.h new file mode 100644 index 0000000..e55533a --- /dev/null +++ b/kernel/power/netlink.h @@ -0,0 +1,59 @@ +/* + * kernel/power/netlink.h + * + * Copyright (C) 2004-2006 Nigel Cunningham <nigel@suspend2.net> + * + * This file is released under the GPLv2. + * + * Declarations for functions for communicating with a userspace helper + * via netlink. + */ + +#include <linux/netlink.h> +#include <net/sock.h> + +#define NETLINK_MSG_BASE 0x10 + +#define NETLINK_MSG_READY 0x10 +#define NETLINK_MSG_NOFREEZE_ME 0x16 +#define NETLINK_MSG_GET_DEBUGGING 0x19 +#define NETLINK_MSG_CLEANUP 0x24 +#define NETLINK_MSG_NOFREEZE_ACK 0x27 +#define NETLINK_MSG_IS_DEBUGGING 0x28 + +struct user_helper_data { + int (*rcv_msg) (struct sk_buff *skb, struct nlmsghdr *nlh); + void (* not_ready) (void); + struct sock *nl; + u32 sock_seq; + pid_t pid; + char *comm; + char program[256]; + int pool_level; + int pool_limit; + struct sk_buff *emerg_skbs; + int skb_size; + int netlink_id; + char *name; + struct user_helper_data *next; + struct completion wait_for_process; + int interface_version; + int must_init; +}; + + +#ifdef CONFIG_NET +int suspend_netlink_setup(struct user_helper_data *uhd); +void suspend_netlink_close(struct user_helper_data *uhd); +void suspend_send_netlink_message(struct user_helper_data *uhd, + int type, void* params, size_t len); +#else +static inline int suspend_netlink_setup(struct user_helper_data *uhd) +{ + return 0; +} + +static inline void suspend_netlink_close(struct user_helper_data *uhd) { }; +static inline void suspend_send_netlink_message(struct user_helper_data *uhd, + int type, void* params, size_t len) { }; +#endif -- Nigel Cunningham nigel at suspend2 dot net - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |