URI: 
       tvarious changes from plan 9 - plan9port - [fork] Plan 9 from user space
  HTML git clone git://src.adamsgaard.dk/plan9port
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 678ede7e54bf508991380c0f896fed6005b87ce9
   DIR parent e1dc7e4511d4644060d4904dcae50808d966fff7
  HTML Author: rsc <devnull@localhost>
       Date:   Mon, 27 Dec 2004 00:14:43 +0000
       
       various changes from plan 9
       
       Diffstat:
         M include/httpd.h                     |       1 +
         M include/ip.h                        |       3 +++
         M include/libc.h                      |       4 ++--
         M include/libsec.h                    |      13 ++++++++++++-
         M include/thread.h                    |       2 ++
       
       5 files changed, 20 insertions(+), 3 deletions(-)
       ---
   DIR diff --git a/include/httpd.h b/include/httpd.h
       t@@ -235,6 +235,7 @@ ulong                        hdate2sec(char*);
        int                        hdatefmt(Fmt*);
        int                        hfail(HConnect*, int, ...);
        int                        hflush(Hio*);
       +int                        hlflush(Hio*);
        int                        hgetc(Hio*);
        int                        hgethead(HConnect *c, int many);
        int                        hinit(Hio*, int, int);
   DIR diff --git a/include/ip.h b/include/ip.h
       t@@ -3,6 +3,7 @@
        #if defined(__cplusplus)
        extern "C" { 
        #endif
       +
        /*
        #pragma        src        "/sys/src/libip"
        #pragma        lib        "libip.a"
       t@@ -106,9 +107,11 @@ long        udpwrite(int, Udphdr*, void*, long);
        
        Ipifc*        readipifc(char*, Ipifc*, int);
        
       +void        hnputv(void*, uvlong);
        void        hnputl(void*, uint);
        void        hnputs(void*, ushort);
        uint        nhgetl(void*);
       +uvlong        nhgetv(void*);
        ushort        nhgets(void*);
        ushort        ptclbsum(uchar*, int);
        
   DIR diff --git a/include/libc.h b/include/libc.h
       t@@ -715,8 +715,8 @@ extern        int        unmount(char*, char*);
        */
        extern        int        noted(int);
        extern        int        notify(void(*)(void*, char*));
       -extern        void        notifyenable(char*);
       -extern        void        notifydisable(char*);
       +extern        void        noteenable(char*);
       +extern        void        notedisable(char*);
        extern        void        notifyon(char*);
        extern        void        notifyoff(char*);
        extern        int        p9open(char*, int);
   DIR diff --git a/include/libsec.h b/include/libsec.h
       t@@ -199,6 +199,7 @@ void        rc4back(RC4state*, int);
        /////////////////////////////////////////////////////////
        typedef struct RSApub RSApub;
        typedef struct RSApriv RSApriv;
       +typedef struct PEMChain PEMChain;
        
        // public/encryption key
        struct RSApub
       t@@ -222,6 +223,13 @@ struct RSApriv
                mpint        *c2;        // (inv p) mod q
        };
        
       +struct PEMChain
       +{
       +        PEMChain *next;
       +        uchar *pem;
       +        int pemlen;
       +};
       +
        RSApriv*        rsagen(int nlen, int elen, int rounds);
        mpint*                rsaencrypt(RSApub *k, mpint *in, mpint *out);
        mpint*                rsadecrypt(RSApriv *k, mpint *in, mpint *out);
       t@@ -232,7 +240,8 @@ void                rsaprivfree(RSApriv*);
        RSApub*                rsaprivtopub(RSApriv*);
        RSApub*                X509toRSApub(uchar*, int, char*, int);
        RSApriv*        asn1toRSApriv(uchar*, int);
       -uchar*                decodepem(char *s, char *type, int *len);
       +uchar*                decodepem(char *s, char *type, int *len, char**);
       +PEMChain*        decodepemchain(char *s, char *type);
        uchar*                X509gen(RSApriv *priv, char *subj, ulong valid[2], int *certlen);
        
        /////////////////////////////////////////////////////////
       t@@ -330,6 +339,7 @@ typedef struct TLSconn{
                uchar *sessionID;
                int certlen, sessionIDlen;
                int (*trace)(char*fmt, ...);
       +        PEMChain *chain;
        } TLSconn;
        
        // tlshand.c
       t@@ -343,6 +353,7 @@ extern int okThumbprint(uchar *sha1, Thumbprint *ok);
        
        // readcert.c
        extern uchar *readcert(char *filename, int *pcertlen);
       +PEMChain *readcertchain(char *filename);
        
        #if defined(__cplusplus)
        }
   DIR diff --git a/include/thread.h b/include/thread.h
       t@@ -13,11 +13,13 @@ void                threadexits(char *);
        void                threadexitsall(char *);
        void                threadsetname(char*, ...);
        void                threadsetstate(char*, ...);
       +void                threadyield(void);
        void                _threadready(_Thread*);
        void                _threadswitch(void);
        void                _threadsetsysproc(void);
        void                _threadsleep(Rendez*);
        _Thread        *_threadwakeup(Rendez*);
       +#define        yield                threadyield
        
        /*
         * per proc and thread data