00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 #ifndef __UUDEVIEW_H__
00018 #define __UUDEVIEW_H__
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 #ifndef _ANSI_ARGS_
00028 #ifdef PROTOTYPES
00029 #define _ANSI_ARGS_(c) c
00030 #else
00031 #define _ANSI_ARGS_(c) ()
00032 #endif
00033 #endif
00034 
00035 
00036 
00037 
00038 
00039 #define UUMSG_MESSAGE (0) 
00040 #define UUMSG_NOTE (1) 
00041 #define UUMSG_WARNING (2) 
00042 #define UUMSG_ERROR (3) 
00043 #define UUMSG_FATAL (4) 
00044 #define UUMSG_PANIC (5) 
00045 
00046 
00047 
00048 
00049 
00050 #define UURET_OK (0) 
00051 #define UURET_IOERR (1) 
00052 #define UURET_NOMEM (2) 
00053 #define UURET_ILLVAL (3) 
00054 #define UURET_NODATA (4) 
00055 #define UURET_NOEND (5) 
00056 #define UURET_UNSUP (6) 
00057 #define UURET_EXISTS (7) 
00058 #define UURET_CONT (8) 
00059 #define UURET_CANCEL (9) 
00060 
00061 
00062 
00063 
00064 
00065 #define UUFILE_READ (0) 
00066 #define UUFILE_MISPART (1) 
00067 #define UUFILE_NOBEGIN (2) 
00068 #define UUFILE_NOEND (4) 
00069 #define UUFILE_NODATA (8) 
00070 #define UUFILE_OK (16) 
00071 #define UUFILE_ERROR (32) 
00072 #define UUFILE_DECODED (64) 
00073 #define UUFILE_TMPFILE (128) 
00074 
00075 
00076 
00077 
00078 
00079 #define UU_ENCODED (1) 
00080 #define B64ENCODED (2) 
00081 #define XX_ENCODED (3) 
00082 #define BH_ENCODED (4) 
00083 #define PT_ENCODED (5) 
00084 #define QP_ENCODED (6) 
00085 #define YENC_ENCODED (7) 
00086 
00087 
00088 
00089 
00090 
00091 #define UUOPT_VERSION (0) 
00092 #define UUOPT_FAST (1) 
00093 #define UUOPT_DUMBNESS (2) 
00094 #define UUOPT_BRACKPOL (3) 
00095 #define UUOPT_VERBOSE (4) 
00096 #define UUOPT_DESPERATE (5) 
00097 #define UUOPT_IGNREPLY (6) 
00098 #define UUOPT_OVERWRITE (7) 
00099 #define UUOPT_SAVEPATH (8) 
00100 #define UUOPT_IGNMODE (9) 
00101 #define UUOPT_DEBUG (10) 
00102 #define UUOPT_ERRNO (14) 
00103 #define UUOPT_PROGRESS (15) 
00104 #define UUOPT_USETEXT (16) 
00105 #define UUOPT_PREAMB (17) 
00106 #define UUOPT_TINYB64 (18) 
00107 #define UUOPT_ENCEXT (19) 
00108 #define UUOPT_REMOVE (20) 
00109 #define UUOPT_MOREMIME (21) 
00110 
00111 
00112 
00113 
00114 
00115 #define UUACT_IDLE (0) 
00116 #define UUACT_SCANNING (1) 
00117 #define UUACT_DECODING (2) 
00118 #define UUACT_COPYING (3) 
00119 #define UUACT_ENCODING (4) 
00120 
00121 
00122 
00123 
00124 
00125 struct _uufile;
00126 
00127 
00128 
00129 
00130 
00131 
00132 
00133 
00134 typedef struct _uulist {
00135   short    state;               
00136   short    mode;                
00137 
00138   int      begin;               
00139   int      end;                 
00140 
00141   short    uudet;               
00142   int      flags;               
00143 
00144   long     size;                
00145   char    *filename;            
00146   char    *subfname;            
00147   char    *mimeid;              
00148   char    *mimetype;            
00149 
00150   char    *binfile;             
00151 
00152   struct _uufile *thisfile;     
00153 
00154   int     *haveparts;           
00155   int     *misparts;            
00156 
00157   struct _uulist *NEXT;         
00158   struct _uulist *PREV;         
00159 } uulist;
00160 
00161 
00162 
00163 
00164 
00165 typedef struct {
00166   int  action;                  
00167   char curfile[256];            
00168   int  partno;                  
00169   int  numparts;                
00170   long fsize;                   
00171   int  percent;                 
00172   long foffset;                 
00173   long totsize;                 
00174 } uuprogress;
00175   
00176 
00177 
00178 
00179 
00180 
00181 #ifndef UUEXPORT
00182 #define UUEXPORT
00183 #endif
00184 
00185 #ifdef __cplusplus
00186 extern "C" {
00187 #endif
00188 
00189 int     UUEXPORT UUInitialize           _ANSI_ARGS_((void));
00190 int     UUEXPORT UUGetOption            _ANSI_ARGS_((int, int *, char *, int));
00191 int     UUEXPORT UUSetOption            _ANSI_ARGS_((int, int, char *));
00192 char *  UUEXPORT UUstrerror             _ANSI_ARGS_((int));
00193 int     UUEXPORT UUSetMsgCallback       _ANSI_ARGS_((void *,
00194                                                      void (*) (void *, 
00195                                                                char *,
00196                                                                int)));
00197 int     UUEXPORT UUSetBusyCallback      _ANSI_ARGS_((void *,
00198                                                      int (*) (void *,
00199                                                               uuprogress *),
00200                                                      long));
00201 int     UUEXPORT UUSetFileCallback      _ANSI_ARGS_((void *,
00202                                                      int (*) (void *, char *,
00203                                                               char *, int)));
00204 int     UUEXPORT UUSetFNameFilter       _ANSI_ARGS_((void *,
00205                                                      char * (*) (void *,
00206                                                                  char *)));
00207 char *  UUEXPORT UUFNameFilter          _ANSI_ARGS_((char *));
00208 int     UUEXPORT UULoadFile             _ANSI_ARGS_((char *, char *, int));
00209 int     UUEXPORT UULoadFileWithPartNo   _ANSI_ARGS_((char *, char *, int, int));
00210 uulist *UUEXPORT UUGetFileListItem      _ANSI_ARGS_((int));
00211 int     UUEXPORT UURenameFile           _ANSI_ARGS_((uulist *, char *));
00212 int     UUEXPORT UUDecodeToTemp         _ANSI_ARGS_((uulist *));
00213 int     UUEXPORT UURemoveTemp           _ANSI_ARGS_((uulist *));
00214 int     UUEXPORT UUDecodeFile           _ANSI_ARGS_((uulist *, char *));
00215 int     UUEXPORT UUInfoFile             _ANSI_ARGS_((uulist *, void *,
00216                                                      int (*) (void *, 
00217                                                               char *)));
00218 int     UUEXPORT UUSmerge               _ANSI_ARGS_((int));
00219 int     UUEXPORT UUCleanUp              _ANSI_ARGS_((void));
00220 
00221 int     UUEXPORT UUQuickDecode          _ANSI_ARGS_((FILE *, FILE *,
00222                                                      char *, long));
00223 
00224 int     UUEXPORT UUEncodeMulti          _ANSI_ARGS_((FILE *, FILE *,
00225                                                      char *, int,
00226                                                      char *, char *, int));
00227 int     UUEXPORT UUEncodePartial        _ANSI_ARGS_((FILE *, FILE *,
00228                                                      char *, int,
00229                                                      char *, char *,
00230                                                      int, int, long,
00231                                                      unsigned long*));
00232 int     UUEXPORT UUEncodeToStream       _ANSI_ARGS_((FILE *, FILE *,
00233                                                      char *, int,
00234                                                      char *, int));
00235 int     UUEXPORT UUEncodeToFile         _ANSI_ARGS_((FILE *, char *, int,
00236                                                      char *, char *, long));
00237 int     UUEXPORT UUE_PrepSingle         _ANSI_ARGS_((FILE *, FILE *,
00238                                                      char *, int,
00239                                                      char *, int,
00240                                                      char *, char *,
00241                                                      char *, int));
00242 int     UUEXPORT UUE_PrepPartial        _ANSI_ARGS_((FILE *, FILE *,
00243                                                      char *, int,
00244                                                      char *, int,
00245                                                      int, long, long, char *,
00246                                                      char *, char *, int));
00247 
00248 int     UUEXPORT UUE_PrepSingleExt      _ANSI_ARGS_((FILE *, FILE *,
00249                                                      char *, int,
00250                                                      char *, int,
00251                                                      char *, char *,
00252                                                      char *, char *,
00253                                                      int));
00254 int     UUEXPORT UUE_PrepPartialExt     _ANSI_ARGS_((FILE *, FILE *,
00255                                                      char *, int,
00256                                                      char *, int,
00257                                                      int, long, long, char *,
00258                                                      char *, char *, char *,
00259                                                      int));
00260 #ifdef __cplusplus
00261 }
00262 #endif
00263 #endif