Need to cd into user/utest to do proper make clean
[akaros.git] / kern / include / ip.h
index 55436eb..6ab0fea 100644 (file)
@@ -7,7 +7,7 @@ enum {
        Addrlen = 64,
        Maxproto = 20,
        Nhash = 64,
-       Maxincall = 5,
+       Maxincall = 500,
        Nchans = 256,
        MAClen = 16,    /* longest mac address */
 
@@ -592,7 +592,9 @@ extern void iprouting(struct Fs *, int);
 extern void icmpnoconv(struct Fs *, struct block *);
 extern void icmpcantfrag(struct Fs *, struct block *, int);
 extern void icmpttlexceeded(struct Fs *, uint8_t * unused_uint8_p_t,
-                                                       struct block *);
+                                       struct block *);
+
+uint16_t ipchecksum(uint8_t *addr, int len);
 extern uint16_t ipcsum(uint8_t * unused_uint8_p_t);
 extern void ipiput4(struct Fs *, struct Ipifc *unused_ipifc, struct block *);
 extern void ipiput6(struct Fs *, struct Ipifc *unused_ipifc, struct block *);
@@ -959,7 +961,7 @@ struct etherpkt {
 };
 // INFERNO
 enum {
-       MaxEther = 4,
+       MaxEther = 32,
        MaxFID = 16,
        Ntypes = 8,
 };
@@ -969,6 +971,7 @@ struct ether {
        int ctlrno;
        char *type;
        int irq;
+       unsigned int tbdf;
        int port;
        int minmtu;
        int maxmtu;
@@ -979,7 +982,6 @@ struct ether {
        void (*closed) (struct ether *);
        void (*detach) (struct ether *);
        void (*transmit) (struct ether *);
-       void (*interrupt) (struct hw_trapframe *, void *);
        long (*ifstat) (struct ether *, void *, long, uint32_t);
        long (*ctl) (struct ether *, void *, long);     /* custom ctl messages */
        void (*power) (struct ether *, int);    /* power on/off */