]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/net/phonet/phonet.h
i2c/isp1301_omap: Convert to a new-style i2c driver, part 2
[linux-2.6-omap-h63xx.git] / include / net / phonet / phonet.h
index 8b777943d2010c3d74f3cb8e31515eaf4b40e477..d4e72508e145a8f743f6e02ec4d3a7ea81cdd7a2 100644 (file)
  */
 #define MAX_PHONET_HEADER      8
 
+/*
+ * Every Phonet* socket has this structure first in its
+ * protocol-specific structure under name c.
+ */
+struct pn_sock {
+       struct sock     sk;
+       u16             sobject;
+       u8              resource;
+};
+
+static inline struct pn_sock *pn_sk(struct sock *sk)
+{
+       return (struct pn_sock *)sk;
+}
+
+extern const struct proto_ops phonet_dgram_ops;
+
+struct sock *pn_find_sock_by_sa(const struct sockaddr_pn *sa);
+void phonet_get_local_port_range(int *min, int *max);
+void pn_sock_hash(struct sock *sk);
+void pn_sock_unhash(struct sock *sk);
+int pn_sock_get_port(struct sock *sk, unsigned short sport);
+
+int pn_skb_send(struct sock *sk, struct sk_buff *skb,
+               const struct sockaddr_pn *target);
+
 static inline struct phonethdr *pn_hdr(struct sk_buff *skb)
 {
        return (struct phonethdr *)skb_network_header(skb);
 }
 
+static inline struct phonetmsg *pn_msg(struct sk_buff *skb)
+{
+       return (struct phonetmsg *)skb_transport_header(skb);
+}
+
 /*
  * Get the other party's sockaddr from received skb. The skb begins
  * with a Phonet header.
@@ -64,6 +95,7 @@ void pn_skb_get_dst_sockaddr(struct sk_buff *skb, struct sockaddr_pn *sa)
 
 /* Protocols in Phonet protocol family. */
 struct phonet_protocol {
+       const struct proto_ops  *ops;
        struct proto            *prot;
        int                     sock_type;
 };
@@ -71,5 +103,10 @@ struct phonet_protocol {
 int phonet_proto_register(int protocol, struct phonet_protocol *pp);
 void phonet_proto_unregister(int protocol, struct phonet_protocol *pp);
 
+int phonet_sysctl_init(void);
+void phonet_sysctl_exit(void);
 void phonet_netlink_register(void);
+int isi_register(void);
+void isi_unregister(void);
+
 #endif