]> rtime.felk.cvut.cz Git - can-eth-gw.git/blobdiff - kernel/canethgw.h
Add "patched" Linux kernel as submodule
[can-eth-gw.git] / kernel / canethgw.h
index c082fcac57951dd492b723afc9123a1611c7e733..65d9cc51b8e9dd36042e978b385918c129bf141d 100644 (file)
@@ -2,73 +2,29 @@
 #define CANETHGW_H
 
 #include <linux/types.h>
-#include <linux/can.h>
-
-/* these are from gw.h */
-struct rtcanmsg {
-       __u8  can_family;
-       __u8  gwtype;
-       __u16 flags;
-};
-
-/* CEGW_CMD_INFO values */
-enum {
-       CEGW_RULE_CAN_ETH,
-       CEGW_RULE_ETH_CAN,
-       CEGW_LISTEN,
-       CEGW_FLUSH,
-       __CEGW_CMD_MAX
-};
-#define CEGW_CMD_MAX (__CEGW_CMD_MAX - 1)
-
-/* rtnetlink attributes */
-enum {
-       CEGW_TYPE,
-       CEGW_CAN_IFINDEX,
-       CEGW_ETH_IP,
-       CEGW_ETH_PORT,
-       CEGW_CMD_INFO,
-       __CEGW_MAX
-};
-#define CEGW_MAX (__CEGW_MAX - 1)
-
-struct cegw_udp_dst
-{
-       __u32 len;
-       struct sockaddr addr;
-};
-
-struct cegw_udp_dst4
-{
-       __u32 len;
-       struct sockaddr_in addr;
-};
 
 struct cegw_ioctl
 {
        __u32 can_sock;
-       __u32 udp_sock;;
+       __u32 udp_sock;
        __u32 udp_dstcnt;
        __u32 udp_addrlen;
        struct sockaddr_in udp_dst[0];
 };
 
+#ifdef __KERNEL__
 struct cegw_job
 {
+       struct kref refcount;
        struct socket* can_sock;
        struct socket* udp_sock;
        __u32  udp_dstcnt;
-       struct sockaddr_in* udp_dst;
+       struct sockaddr_in udp_dst[0];
 };
+#endif
 
 #define CEGW_IOCTL_BASE 'c'
 #define CEGW_IOCTL_START _IOW(CEGW_IOCTL_BASE, 0, struct cegw_ioctl)
 
-/* ToDo:
- *     CEGW_HANDLED
- *     CEGW_DROPPED
- *     CEGW_ETH_PROTO
- */
-
 #endif /* CANETHGW_H */