]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/um/include/net_kern.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/x86
[linux-2.6-omap-h63xx.git] / arch / um / include / net_kern.h
index 218f8b47fdcd7ea80543acca85bc4e2b0bd9e972..d843c7924a7cf2568a1ce88ff9182a52f4ccc322 100644 (file)
@@ -1,5 +1,5 @@
-/* 
- * Copyright (C) 2002 Jeff Dike (jdike@karaya.com)
+/*
+ * Copyright (C) 2002 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
  * Licensed under the GPL
  */
 
@@ -30,40 +30,39 @@ struct uml_net_private {
        struct work_struct work;
        int fd;
        unsigned char mac[ETH_ALEN];
+       int max_packet;
        unsigned short (*protocol)(struct sk_buff *);
        int (*open)(void *);
        void (*close)(int, void *);
        void (*remove)(void *);
-       int (*read)(int, struct sk_buff **skb, struct uml_net_private *);
-       int (*write)(int, struct sk_buff **skb, struct uml_net_private *);
-       
+       int (*read)(int, struct sk_buff *skb, struct uml_net_private *);
+       int (*write)(int, struct sk_buff *skb, struct uml_net_private *);
+
        void (*add_address)(unsigned char *, unsigned char *, void *);
        void (*delete_address)(unsigned char *, unsigned char *, void *);
-       int (*set_mtu)(int mtu, void *);
-       int user[1];
+       char user[0];
 };
 
 struct net_kern_info {
        void (*init)(struct net_device *, void *);
        unsigned short (*protocol)(struct sk_buff *);
-       int (*read)(int, struct sk_buff **skb, struct uml_net_private *);
-       int (*write)(int, struct sk_buff **skb, struct uml_net_private *);
+       int (*read)(int, struct sk_buff *skb, struct uml_net_private *);
+       int (*write)(int, struct sk_buff *skb, struct uml_net_private *);
 };
 
 struct transport {
        struct list_head list;
-       char *name;
-       int (*setup)(char *, char **, void *);
+       const char *name;
+       int (* const setup)(char *, char **, void *);
        const struct net_user_info *user;
        const struct net_kern_info *kern;
-       int private_size;
-       int setup_size;
+       const int private_size;
+       const int setup_size;
 };
 
 extern struct net_device *ether_init(int);
 extern unsigned short ether_protocol(struct sk_buff *);
-extern struct sk_buff *ether_adjust_skb(struct sk_buff *skb, int extra);
-extern int tap_setup_common(char *str, char *type, char **dev_name, 
+extern int tap_setup_common(char *str, char *type, char **dev_name,
                            char **mac_out, char **gate_addr);
 extern void register_transport(struct transport *new);
 extern unsigned short eth_protocol(struct sk_buff *skb);