This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #90632] perlfunc: Rewrite `split'
[perl5.git] / NetWare / netware.h
1
2 /*
3  * Copyright © 2001 Novell, Inc. All Rights Reserved.
4  *
5  * You may distribute under the terms of either the GNU General Public
6  * License or the Artistic License, as specified in the README file.
7  *
8  */
9
10 /*
11  * FILENAME             :       netware.h
12  * DESCRIPTION  :       Include for NetWare stuff.
13  *                  This is based on the win32.h file of Win32 port.
14  * Author               :       SGP
15  * Date                 :       January 2001.
16  *
17  */
18
19
20
21 #ifndef  _INC_NW_PERL5
22 #define  _INC_NW_PERL5
23
24 #include <dirent.h>
25 #include "stdio.h"
26
27 // to get the internal debugger break for functions that are not yet handled
28 #include "deb.h"
29
30 #ifndef EXT
31 #include "EXTERN.h"
32 #endif
33
34 //structure that will be used by times routine.
35 struct tms {
36         long    tms_utime;
37         long    tms_stime;
38         long    tms_cutime;
39         long    tms_cstime;
40 };
41
42 #define PERL_GET_CONTEXT_DEFINED
43 #define ENV_IS_CASELESS
44
45 #undef   init_os_extras
46 #define  init_os_extras Perl_init_os_extras
47
48 #define HAVE_INTERP_INTERN
49 struct interp_intern {
50     void *      internal_host;
51     long        perlshell_items;        // For system() ;  Ananth, 3 Sept 2001
52
53     char *      perlshell_tokens;       // For system() ; From Win32 of Perl 5.8 on 24 June 2002
54     char **     perlshell_vec;  // For system() ; From Win32 of Perl 5.8 on 24 June 2002
55 };
56
57 /*
58  * handle socket stuff, assuming socket is always available
59  */
60 #include <sys/socket.h>
61 #include <sys/types.h>
62 #include <netdb.h>
63
64 //This is clashing with a definition in perly.h, hence
65 //undefine, may have to redefine if need be - CHKSGP
66 #undef WORD
67
68 #ifndef SOCKET
69 typedef u_int           SOCKET;
70 #endif
71
72 #define nw_internal_host                (PL_sys_intern.internal_host)
73 #define nw_perlshell_items      (PL_sys_intern.perlshell_items)         // For system() ;  Ananth, 3 Sept 2001
74
75 #define nw_perlshell_tokens     (PL_sys_intern.perlshell_tokens)        // For system() ; From Win32 of Perl 5.8 on 24 June 2002
76 #define nw_perlshell_vec        (PL_sys_intern.perlshell_vec)   // For system() ; From Win32 of Perl 5.8 on 24 June 2002
77
78 EXTERN_C void   Perl_nw5_init(int *argcp, char ***argvp);
79
80 #define PTHREAD_ATFORK(prepare,parent,child)    NOOP
81
82 /*
83  * This provides a layer of functions and macros to ensure extensions will
84  * get to use the same RTL functions as the core.
85  */
86 #include "nw5iop.h"
87
88 // Below is called in Run.c file when a perl script executes/runs.
89 #ifdef MPK_ON
90         #define PERL_ASYNC_CHECK() kYieldThread();
91 #else
92         #define PERL_ASYNC_CHECK() ThreadSwitch();
93 #endif
94
95
96 #endif /* _INC_NW_PERL5 */
97