Remove kprof's timer (XCC)
[akaros.git] / kern / include / ip.h
index a9dac77..dd1edcc 100644 (file)
@@ -66,6 +66,12 @@ enum {
        Connected = 4,
 };
 
+enum {
+       SHUT_RD = 0,
+       SHUT_WR = 1,
+       SHUT_RDWR = 2,
+};
+
 /*
  *  one per conversation directory
  */
@@ -80,7 +86,6 @@ struct conv {
        uint32_t ttl;                           /* max time to live */
        uint32_t tos;                           /* type of service */
        int ignoreadvice;                       /* don't terminate connection on icmp errors */
-       bool nonblock;                          /* set to nonblocking, O_NONBLOCK style */
 
        uint8_t ipversion;
        uint8_t laddr[IPaddrlen];       /* local IP address */
@@ -239,7 +244,7 @@ struct Ipifc {
 
        uint8_t sendra6;                        /* == 1 => send router advs on this ifc */
        uint8_t recvra6;                        /* == 1 => recv router advs on this ifc */
-       struct routerparams rp;         /* router parameters as in RFC 2461, pp.40--43. 
+       struct routerparams rp;         /* router parameters as in RFC 2461, pp.40--43.
                                                                   used only if node is router */
 };
 
@@ -295,6 +300,7 @@ struct Proto {
        int (*state) (struct conv *, char *unused_char_p_t, int);
        void (*create) (struct conv *);
        void (*close) (struct conv *);
+       void (*shutdown)(struct conv *, int);
        void (*rcv) (struct Proto *, struct Ipifc *, struct block *);
        void (*ctl)(struct conv *, char **, int);
        void (*advise) (struct Proto *, struct block *, char *unused_char_p_t);
@@ -391,10 +397,9 @@ struct Proto *Fsrcvpcolx(struct Fs *, uint8_t unused_uint8_t);
 void Fsstdconnect(struct conv *, char **, int);
 void Fsstdannounce(struct conv *, char **, int);
 void Fsstdbind(struct conv *, char **, int);
-void Fsconvnonblock(struct conv *, bool);
 uint32_t scalednconv(void);
 
-/* 
+/*
  *  logging
  */
 enum {