home *** CD-ROM | disk | FTP | other *** search
/ YPA: Your Privacy Assured / YPA.ISO / other_goodies / utilities / amipop116.lha / AmiPOP116 / source / pop.h < prev    next >
C/C++ Source or Header  |  1995-01-23  |  7KB  |  230 lines

  1. #define INTUI_V36_NAMES_ONLY
  2.  
  3. #ifdef AMITCP
  4.     #define PROTO_TIMER_H
  5.     #define CLIB_SOCKET_INLINES_H
  6. #endif
  7.  
  8. #include <proto/dos.h>
  9. #include <proto/intuition.h>
  10. #include <proto/gadtools.h>
  11. #include <proto/timer.h>
  12. #include <proto/commodities.h>
  13. #include <proto/exec.h>
  14. #include <proto/timer.h>
  15. #include <proto/icon.h>
  16. #include <exec/types.h>
  17. #include <exec/ports.h>
  18. #include <exec/libraries.h>
  19. #include <exec/execbase.h>
  20. #include <exec/memory.h>
  21. #include <exec/ports.h>
  22. #include <libraries/gadtools.h>
  23. #include <libraries/commodities.h>
  24. #include <dos/dos.h>
  25. #include <dos/dosextens.h>
  26. #include <intuition/intuition.h>
  27. #include <intuition/classes.h>
  28. #include <intuition/classusr.h>
  29. #include <intuition/imageclass.h>
  30. #include <intuition/gadgetclass.h>
  31. #include <intuition/sghooks.h>
  32. #include <graphics/displayinfo.h>
  33. #include <graphics/gfxbase.h>
  34. #include <workbench/startup.h>
  35. #include <devices/timer.h>
  36. #include <sys/types.h>
  37. #include <sys/socket.h>
  38. #include <sys/param.h>
  39. #include <stdio.h>
  40. #include <stdlib.h>
  41. #include <string.h>
  42. #include <errno.h>
  43. #include <netdb.h>
  44. #include <fcntl.h>
  45. /*#include <time.h> */
  46.  
  47. #ifdef AMITCP
  48.     #define SOCKLIBNAME "bsdsocket.library"
  49.     #define SOCKLIBVERSION (2L)
  50.     #include <bsdsocket.h>
  51.     #include <sys/ioctl.h>
  52.     #include <sys/time.h>
  53.     #include <signal.h>
  54.     #define selectwait WaitSelect
  55.     #undef select
  56.     #define select(a, b, c, d, e) selectwait(a, b, c, d, e, NULL)
  57.     #define s_close CloseSocket
  58.     #define s_ioctl IoctlSocket
  59.     #undef inet_ntoa
  60.     #define inet_ntoa Inet_NtoA
  61.     #undef inet_netof
  62.     #define inet_netof Inet_NetOf
  63.     #undef inet_lnaof
  64.     #define inet_lnaof Inet_LnaOf
  65.     #define accept(a, b, c) accept(a, b, (LONG *)c)
  66.     #define s_release(a) (void *)ReleaseSocket(a, -1)
  67.     #define s_inherit(a) ObtainSocket((LONG)a, AF_INET, SOCK_STREAM, 0)
  68.     #define SocketBase SockBase
  69.     extern int errno;
  70. #else
  71.     #include <ss/socket.h>
  72.     #define SOCKLIBNAME "inet:libs/socket.library"
  73.     #define SOCKLIBVERSION 4L
  74. #endif
  75.  
  76. #include "asyncio.h"
  77.  
  78. #define MAXSOCKS 10
  79.  
  80. #define GetString( g )      ((( struct StringInfo * )g->SpecialInfo )->Buffer  )
  81. #define GetNumber( g )      ((( struct StringInfo * )g->SpecialInfo )->LongInt )
  82.  
  83. #define GD_MYGAD_USER                          0
  84. #define GD_MYGAD_PASSWORD                      1
  85. #define GD_MYGAD_DELETE                        2
  86. #define GD_MYGAD_MAILBOX                       3
  87. #define GD_MYGAD_BUTTON                        4
  88. #define GD_MYGAD_HOST                          5
  89. #define GD_MYGAD_TIME                          6
  90. #define GD_MYGAD_CRONCHECK                     7
  91. #define GD_MYGAD_APPEND                        8
  92.  
  93. #define GDX_MYGAD_USER                         0
  94. #define GDX_MYGAD_PASSWORD                     1
  95. #define GDX_MYGAD_DELETE                       2
  96. #define GDX_MYGAD_MAILBOX                      3
  97. #define GDX_MYGAD_BUTTON                       4
  98. #define GDX_MYGAD_HOST                         5
  99. #define GDX_MYGAD_TIME                         6
  100. #define GDX_MYGAD_CRONCHECK                    7
  101. #define GDX_MYGAD_APPEND                       8
  102.  
  103. #define Project0_CNT 9
  104.  
  105. extern struct Screen        *Scr;
  106. extern UBYTE                *PubScreenName;
  107. extern APTR                  VisualInfo;
  108. extern struct Window        *Project0Wnd;
  109. extern struct Gadget        *Project0GList;
  110. extern struct Menu          *Project0Menus;
  111. extern struct IntuiMessage   Project0Msg;
  112. extern struct Gadget        *Project0Gadgets[9];
  113. extern UWORD                 Project0Width;
  114. extern UWORD                 Project0Height;
  115. extern UBYTE                *Project0Wdt;
  116. extern struct TextAttr      *Font, Attr;
  117. extern UWORD                 FontX, FontY;
  118. extern UWORD                 OffX, OffY;
  119. extern struct NewMenu        Project0NewMenu[];
  120. extern UWORD                 Project0GTypes[];
  121. extern struct NewGadget      Project0NGad[];
  122. extern ULONG                 Project0GTags[];
  123.  
  124. extern int MYGAD_USERClicked( void );
  125. extern int MYGAD_PASSWORDClicked( void );
  126. extern int MYGAD_DELETEClicked( void );
  127. extern int MYGAD_MAILBOXClicked( void );
  128. extern int MYGAD_BUTTONClicked( void );
  129. extern int MYGAD_HOSTClicked( void );
  130. extern int MYGAD_TIMEClicked( void );
  131. extern int MYGAD_CRONCHECKClicked( void );
  132. extern int MYGAD_APPENDClicked( void );
  133. extern int Project0MENU_HIDE( void );
  134. extern int Project0MENU_ABOUT( void );
  135. extern int Project0MENU_QUIT( void );
  136.  
  137. extern int SetupScreen( void );
  138. extern void CloseDownScreen( void );
  139. extern void Project0Render( void );
  140. extern int HandleProject0IDCMP( void );
  141. extern int Project0CloseWindow( void );
  142. extern int Project0VanillaKey( void );
  143. extern int Project0ChangeWindow( void );
  144. extern int OpenProject0Window( void );
  145. extern void CloseProject0Window( void );
  146.  
  147. /* My Protos */
  148.  
  149. extern int main( int, char **);
  150. extern void openup( void );
  151. extern void closedown( void );
  152. extern BOOL parse( int );
  153. extern LONG *ParseParameters(int , char *);
  154. void FreeParameters( LONG * );
  155. extern BOOL makevars( void );
  156. extern void freevars( void );
  157.  
  158. extern int setupcx( void );
  159. extern void closecx( void );
  160. extern int docx( void );
  161.  
  162. extern int dopop( void );
  163. extern int senduser( int );
  164. extern int sendquit( int );
  165. extern int sendstat( int );
  166. extern int retrieve ( int , int );
  167. extern int lastblock (char * );
  168. extern char * strip( char * );
  169. extern int delmessage( int , int );
  170. extern int doreq( const char * , const char * );
  171. extern int valcheck( int, char * );
  172. extern int trans( int , char *);
  173. extern void settitle( char * );
  174.  
  175. extern int setuptime( void );
  176. extern int closetime(void );
  177. extern void timereq( void );
  178.  
  179. extern __stdargs void DoFmt (char *buf, const char *fmt, ...); /* sprintf() replacement */
  180.  
  181.  
  182. /* Variables */
  183.  
  184. #define EVT_HOTKEY 1L
  185. #define PASSCHAR '╖'
  186. #define SMALLSTRING 64
  187. #define BIGSTRING 255
  188. #define BUFSIZE 257
  189.  
  190. extern char *pophost;
  191. extern char *username;
  192. extern char *password;
  193. extern char *passfake;
  194. extern char *mailbox;
  195. extern char *cxname;
  196. extern char *cxdesc;
  197. extern char *hotkey;
  198. extern char *title;
  199. extern char *temp;
  200. extern char *buf;
  201.  
  202. extern char bum[];
  203.  
  204. extern BOOL delmail;
  205. extern BOOL checkper;
  206. extern BOOL appfile;
  207. extern BOOL winop;
  208. extern BOOL notify;
  209.  
  210. extern int timecheck;
  211. extern int port;
  212. extern int winx;
  213. extern int winy;
  214.  
  215. extern ULONG cxsigflag;
  216. extern ULONG sigmask;
  217. extern ULONG timesigflag;
  218.  
  219. extern struct MsgPort *amipop_mp;
  220. extern struct MsgPort *timer_mp;
  221. extern struct WBStartup *_WBenchMsg;
  222. extern struct timerequest *timerio;
  223. extern CxObj *broker;
  224. extern struct NewBroker newbroker;
  225. extern struct Library *TimerBase;
  226. extern struct IntuitionBase *IntuitionBase;
  227. extern struct Library *GadToolsBase;
  228.  
  229. extern UWORD __chip waitPointer[];
  230.