URI:
       tmain.c - 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
       ---
       tmain.c (1291B)
       ---
            1 /*
            2 TO DO
            3 
            4 can get disposition info out of imap extended structure if needed
            5 sizes in stat/ls ?
            6 translate character sets in =? subjects
            7 
            8 fetch headers, bodies on demand
            9 
           10 cache headers, bodies on disk
           11 
           12 cache message information on disk across runs
           13 
           14 body.jpg
           15 
           16 */
           17 
           18 #include "a.h"
           19 
           20 Imap *imap;
           21 
           22 void
           23 usage(void)
           24 {
           25         fprint(2, "usage: mailfs [-DVtx] [-m mtpt] [-s srvname] [-r root] [-u user] server\n");
           26         threadexitsall("usage");
           27 }
           28 
           29 int
           30 threadmaybackground(void)
           31 {
           32         return 1;
           33 }
           34 
           35 void
           36 threadmain(int argc, char **argv)
           37 {
           38         char *server, *srvname, *root, *user;
           39         int mode;
           40         char *mtpt;
           41 
           42         srvname = "mail";
           43         root = "";
           44         mode = Unencrypted;
           45         mtpt = nil;
           46         user = nil;
           47         ARGBEGIN{
           48         default:
           49                 usage();
           50         case 'D':
           51                 chatty9p++;
           52                 break;
           53         case 'V':
           54                 chattyimap++;
           55                 break;
           56         case 'm':
           57                 mtpt = EARGF(usage());
           58                 break;
           59         case 's':
           60                 srvname = EARGF(usage());
           61                 break;
           62         case 't':
           63                 mode = Tls;
           64                 break;
           65         case 'u':
           66                 user = EARGF(usage());
           67                 break;
           68         case 'x':
           69                 mode = Cmd;
           70                 break;
           71         case 'r':
           72                 root = EARGF(usage());
           73                 break;
           74         }ARGEND
           75 
           76         quotefmtinstall();
           77         fmtinstall('$', sxfmt);
           78 
           79         if(argc != 1)
           80                 usage();
           81         server = argv[0];
           82 
           83         mailthreadinit();
           84         boxinit();
           85         fsinit0();
           86 
           87         if((imap = imapconnect(server, mode, root, user)) == nil)
           88                 sysfatal("imapconnect: %r");
           89         threadpostmountsrv(&fs, srvname, mtpt, 0);
           90 }