2 #ifndef AMIGA_H_INCLUDED
3 #define AMIGA_H_INCLUDED
4 #define AMIGA_H_VERSION "$Id: amiga.h,v 1.13 2009/05/16 13:27:20 fabiankeil Exp $"
5 /*********************************************************************
7 * File : $Source: /cvsroot/ijbswa/current/amiga.h,v $
9 * Purpose : Amiga-specific declarations.
11 * Copyright : Written by and Copyright (C) 2001 the SourceForge
12 * Privoxy team. http://www.privoxy.org/
14 * This program is free software; you can redistribute it
15 * and/or modify it under the terms of the GNU General
16 * Public License as published by the Free Software
17 * Foundation; either version 2 of the License, or (at
18 * your option) any later version.
20 * This program is distributed in the hope that it will
21 * be useful, but WITHOUT ANY WARRANTY; without even the
22 * implied warranty of MERCHANTABILITY or FITNESS FOR A
23 * PARTICULAR PURPOSE. See the GNU General Public
24 * License for more details.
26 * The GNU General Public License should be included with
27 * this file. If not, you can view it at
28 * http://www.gnu.org/copyleft/gpl.html
29 * or write to the Free Software Foundation, Inc., 59
30 * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
32 *********************************************************************/
36 #include <sys/socket.h>
40 #define __NOGLOBALIFACE__
41 #include <proto/socket.h>
43 #undef __NOGLOBALIFACE__
45 #define __CONSTLIBBASEDECL__ const
46 #include <proto/exec.h>
47 #include <exec/tasks.h>
48 #include <proto/dos.h>
49 #include <dos/dostags.h>
54 struct SocketIFace *si;
62 #define ISocket (((struct UserData *)(FindTask(NULL)->tc_UserData))->si)
65 #define SocketBase ((struct Library *)(((struct UserData *)(FindTask(NULL)->tc_UserData))->sb))
67 #define errno (((struct UserData *)(FindTask(NULL)->tc_UserData))->eno)
68 #define select(a,b,c,d,e) WaitSelect(a,b,c,d,e,NULL)
69 #define inet_ntoa(x) Inet_NtoA(x.s_addr)
72 extern struct Task *main_task;
75 void amiga_exit(void);
76 void __memCleanUp(void);
77 SAVEDS ULONG server_thread(void);
84 if(main_task == FindTask(NULL)) \
86 while(childs) Delay(10*TICKS_PER_SECOND); exit(x); \
92 struct Library *sb = ISocket->Data.LibBase; \
93 DropInterface((struct Interface *)ISocket); \
110 if(main_task == FindTask(NULL)) \
112 while(childs) Delay(10*TICKS_PER_SECOND); exit(x); \
116 CloseLibrary(SocketBase); \
130 #define timegm(tm) mktime(tm)
131 #endif /* __amigaos4__ */
136 #endif /* ndef AMIGA_H_INCLUDED */
137 #endif /* def AMIGA */