URI: 
       tplumb.h - 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
       ---
       tplumb.h (1283B)
       ---
            1 #ifndef _LIBPLUMB_H_
            2 #define _LIBPLUMB_H_ 1
            3 #if defined(__cplusplus)
            4 extern "C" { 
            5 #endif
            6 
            7 AUTOLIB(plumb)
            8 /*
            9 #pragma        lib        "libplumb.a"
           10 #pragma        src        "/sys/src/libplumb"
           11 */
           12 
           13 /*
           14  * Message format:
           15  *        source application\n
           16  *        destination port\n
           17  *        working directory\n
           18  *        type\n
           19  *        attributes\n
           20  *        nbytes\n
           21  *        n bytes of data
           22  */
           23 
           24 typedef struct Plumbattr Plumbattr;
           25 typedef struct Plumbmsg Plumbmsg;
           26 
           27 struct Plumbmsg
           28 {
           29         char                *src;
           30         char                *dst;
           31         char                *wdir;
           32         char                *type;
           33         Plumbattr        *attr;
           34         int                ndata;
           35         char                *data;
           36 };
           37 
           38 struct Plumbattr
           39 {
           40         char                *name;
           41         char                *value;
           42         Plumbattr        *next;
           43 };
           44 
           45 int                        plumbsend(int, Plumbmsg*);
           46 Plumbmsg*        plumbrecv(int);
           47 char*                plumbpack(Plumbmsg*, int*);
           48 Plumbmsg*        plumbunpack(char*, int);
           49 Plumbmsg*        plumbunpackpartial(char*, int, int*);
           50 char*                plumbpackattr(Plumbattr*);
           51 Plumbattr*        plumbunpackattr(char*);
           52 Plumbattr*        plumbaddattr(Plumbattr*, Plumbattr*);
           53 Plumbattr*        plumbdelattr(Plumbattr*, char*);
           54 void                        plumbfree(Plumbmsg*);
           55 char*                plumblookup(Plumbattr*, char*);
           56 int                        plumbopen(char*, int);
           57 int                        eplumb(int, char*);
           58 int                        plumbunmount(void);
           59 
           60 #ifdef _9PCLIENT_H_
           61 CFid*                plumbopenfid(char*, int);
           62 Plumbmsg*        plumbrecvfid(CFid*);
           63 Plumbmsg*        threadplumbrecvfid(CFid*);
           64 int                plumbsendtofid(CFid*, Plumbmsg*);
           65 #endif
           66 
           67 #if defined(__cplusplus)
           68 }
           69 #endif
           70 #endif