Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
opt /
miniconda3 /
python /
include /
[ HOME SHELL ]
Name
Size
Permission
Action
curl
[ DIR ]
drwxrwxr-x
editline
[ DIR ]
drwxrwxr-x
fmt
[ DIR ]
drwxrwxr-x
gmock
[ DIR ]
drwxrwxr-x
gssapi
[ DIR ]
drwxrwxr-x
gssrpc
[ DIR ]
drwxrwxr-x
gtest
[ DIR ]
drwxrwxr-x
kadm5
[ DIR ]
drwxrwxr-x
krb5
[ DIR ]
drwxrwxr-x
libxml2
[ DIR ]
drwxrwxr-x
lzma
[ DIR ]
drwxrwxr-x
mamba
[ DIR ]
drwxrwxr-x
ncurses
[ DIR ]
drwxrwxr-x
ncursesw
[ DIR ]
drwxrwxr-x
nghttp2
[ DIR ]
drwxrwxr-x
openssl
[ DIR ]
drwxrwxr-x
python3.12
[ DIR ]
drwxrwxr-x
readline
[ DIR ]
drwxrwxr-x
reproc
[ DIR ]
drwxrwxr-x
reproc++
[ DIR ]
drwxrwxr-x
solv
[ DIR ]
drwxrwxr-x
unicode
[ DIR ]
drwxrwxr-x
uuid
[ DIR ]
drwxrwxr-x
yaml-cpp
[ DIR ]
drwxrwxr-x
archive.h
52.5
KB
-rw-rw-r--
archive_entry.h
33
KB
-rw-rw-r--
ares.h
26.07
KB
-rw-rw-r--
ares_build.h
1.01
KB
-rw-rw-r--
ares_dns.h
5.41
KB
-rw-rw-r--
ares_nameser.h
13.13
KB
-rw-rw-r--
ares_rules.h
4.17
KB
-rw-rw-r--
ares_version.h
648
B
-rw-rw-r--
bzlib.h
6.09
KB
-rw-rw-r--
com_err.h
1.93
KB
-rw-rw-r--
curses.h
97.9
KB
-rw-rw-r--
cursesapp.h
7.06
KB
-rw-rw-r--
cursesf.h
27.57
KB
-rw-rw-r--
cursesm.h
19.53
KB
-rw-rw-r--
cursesp.h
8.61
KB
-rw-rw-r--
cursesw.h
49.23
KB
-rw-rw-r--
cursslk.h
7.16
KB
-rw-rw-r--
default.h
581
B
-rw-rw-r--
eti.h
2.9
KB
-rw-rw-r--
etip.h
9.91
KB
-rw-rw-r--
ev++.h
20.07
KB
-rw-rw-r--
ev.h
29.55
KB
-rw-rw-r--
expat.h
43.04
KB
-rw-rw-r--
expat_config.h
4.16
KB
-rw-rw-r--
expat_external.h
5.89
KB
-rw-rw-r--
fakemysql.h
8.73
KB
-rw-rw-r--
fakepq.h
1.16
KB
-rw-rw-r--
fakesql.h
6.37
KB
-rw-rw-r--
ffi.h
13.95
KB
-rw-rw-r--
ffitarget.h
4.81
KB
-rw-rw-r--
form.h
18.47
KB
-rw-rw-r--
gssapi.h
181
B
-rw-rw-r--
histedit.h
9.41
KB
-rw-rw-r--
itcl.h
5.53
KB
-rw-rw-r--
itcl2TclOO.h
1.81
KB
-rw-rw-r--
itclDecls.h
6.86
KB
-rw-rw-r--
itclInt.h
36.22
KB
-rw-rw-r--
itclIntDecls.h
41.75
KB
-rw-rw-r--
itclMigrate2TclCore.h
2.85
KB
-rw-rw-r--
itclTclIntStubsFcn.h
1.68
KB
-rw-rw-r--
kdb.h
62.67
KB
-rw-rw-r--
krad.h
8.72
KB
-rw-rw-r--
krb5.h
402
B
-rw-rw-r--
ks_names.h
44.79
KB
-rw-rw-r--
libssh2.h
57.23
KB
-rw-rw-r--
libssh2_publickey.h
4.79
KB
-rw-rw-r--
libssh2_sftp.h
16.38
KB
-rw-rw-r--
lz4.h
42.25
KB
-rw-rw-r--
lz4frame.h
31.98
KB
-rw-rw-r--
lz4frame_static.h
2
KB
-rw-rw-r--
lz4hc.h
19.71
KB
-rw-rw-r--
lzma.h
9.73
KB
-rw-rw-r--
menu.h
11.61
KB
-rw-rw-r--
mysqlStubs.h
5.52
KB
-rw-rw-r--
nc_tparm.h
4.67
KB
-rw-rw-r--
ncurses.h
97.9
KB
-rw-rw-r--
ncurses_dll.h
3.95
KB
-rw-rw-r--
odbcStubs.h
5.06
KB
-rw-rw-r--
panel.h
4.42
KB
-rw-rw-r--
pcre2.h
46.15
KB
-rw-rw-r--
pcre2posix.h
7.12
KB
-rw-rw-r--
pqStubs.h
3.5
KB
-rw-rw-r--
profile.h
11.89
KB
-rw-rw-r--
sqlite3.h
626.84
KB
-rw-rw-r--
sqlite3ext.h
37.25
KB
-rw-rw-r--
tcl.h
91.69
KB
-rw-rw-r--
tclDecls.h
171.45
KB
-rw-rw-r--
tclInt.h
169.69
KB
-rw-rw-r--
tclIntDecls.h
55.63
KB
-rw-rw-r--
tclIntPlatDecls.h
22.71
KB
-rw-rw-r--
tclOO.h
4.16
KB
-rw-rw-r--
tclOODecls.h
9.45
KB
-rw-rw-r--
tclOOInt.h
23.08
KB
-rw-rw-r--
tclOOIntDecls.h
7.01
KB
-rw-rw-r--
tclPlatDecls.h
4
KB
-rw-rw-r--
tclPort.h
1.17
KB
-rw-rw-r--
tclThread.h
821
B
-rw-rw-r--
tclTomMath.h
29.76
KB
-rw-rw-r--
tclTomMathDecls.h
26.73
KB
-rw-rw-r--
tclUnixPort.h
20.22
KB
-rw-rw-r--
tdbc.h
1.64
KB
-rw-rw-r--
tdbcDecls.h
1.46
KB
-rw-rw-r--
tdbcInt.h
1.24
KB
-rw-rw-r--
term.h
40.77
KB
-rw-rw-r--
term_entry.h
9.02
KB
-rw-rw-r--
termcap.h
3.4
KB
-rw-rw-r--
tic.h
14.5
KB
-rw-rw-r--
tk.h
57.28
KB
-rw-rw-r--
tk3d.h
3.04
KB
-rw-rw-r--
tkArray.h
18
KB
-rw-rw-r--
tkBusy.h
1.58
KB
-rw-rw-r--
tkButton.h
12.2
KB
-rw-rw-r--
tkCanvas.h
11.22
KB
-rw-rw-r--
tkColor.h
2.6
KB
-rw-rw-r--
tkDList.h
16.36
KB
-rw-rw-r--
tkDecls.h
76.04
KB
-rw-rw-r--
tkEntry.h
10.97
KB
-rw-rw-r--
tkFileFilter.h
2.51
KB
-rw-rw-r--
tkFont.h
7.82
KB
-rw-rw-r--
tkImgPhoto.h
8.83
KB
-rw-rw-r--
tkInt.h
47
KB
-rw-rw-r--
tkIntDecls.h
49.68
KB
-rw-rw-r--
tkIntPlatDecls.h
29.12
KB
-rw-rw-r--
tkIntXlibDecls.h
66.76
KB
-rw-rw-r--
tkMacOSX.h
1016
B
-rw-rw-r--
tkMacOSXColor.h
16.57
KB
-rw-rw-r--
tkMacOSXConstants.h
4.9
KB
-rw-rw-r--
tkMacOSXCursors.h
4.21
KB
-rw-rw-r--
tkMacOSXDebug.h
951
B
-rw-rw-r--
tkMacOSXDefault.h
18.11
KB
-rw-rw-r--
tkMacOSXEvent.h
526
B
-rw-rw-r--
tkMacOSXFont.h
798
B
-rw-rw-r--
tkMacOSXInt.h
4.83
KB
-rw-rw-r--
tkMacOSXKeysyms.h
48.88
KB
-rw-rw-r--
tkMacOSXPort.h
4.76
KB
-rw-rw-r--
tkMacOSXPrivate.h
18.39
KB
-rw-rw-r--
tkMacOSXWm.h
10.01
KB
-rw-rw-r--
tkMacOSXXCursors.h
36.92
KB
-rw-rw-r--
tkMenu.h
20.73
KB
-rw-rw-r--
tkMenubutton.h
7.85
KB
-rw-rw-r--
tkPlatDecls.h
6.68
KB
-rw-rw-r--
tkPort.h
632
B
-rw-rw-r--
tkScale.h
8.82
KB
-rw-rw-r--
tkScrollbar.h
6.71
KB
-rw-rw-r--
tkSelect.h
6.61
KB
-rw-rw-r--
tkText.h
45.83
KB
-rw-rw-r--
tkUndo.h
3.59
KB
-rw-rw-r--
tkUnixDefault.h
16.94
KB
-rw-rw-r--
tkUnixInt.h
674
B
-rw-rw-r--
tkUnixPort.h
4.11
KB
-rw-rw-r--
tkUuid.h
92
B
-rw-rw-r--
unctrl.h
3.11
KB
-rw-rw-r--
verto-module.h
6.48
KB
-rw-rw-r--
verto.h
18.98
KB
-rw-rw-r--
zconf.h
16.28
KB
-rw-rw-r--
zdict.h
25.81
KB
-rw-rw-r--
zlib.h
95.04
KB
-rw-rw-r--
zstd.h
167.36
KB
-rw-rw-r--
zstd_errors.h
4.43
KB
-rw-rw-r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : tclUnixPort.h
/* * tclUnixPort.h -- * * This header file handles porting issues that occur because of * differences between systems. It reads in UNIX-related header files and * sets up UNIX-related macros for Tcl's UNIX core. It should be the only * file that contains #ifdefs to handle different flavors of UNIX. This * file sets up the union of all UNIX-related things needed by any of the * Tcl core files. This file depends on configuration #defines such as * NO_DIRENT_H that are set up by the "configure" script. * * Much of the material in this file was originally contributed by Karl * Lehenbauer, Mark Diekhans and Peter da Silva. * * Copyright (c) 1991-1994 The Regents of the University of California. * Copyright (c) 1994-1997 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. */ #ifndef _TCLUNIXPORT #define _TCLUNIXPORT /* *--------------------------------------------------------------------------- * The following sets of #includes and #ifdefs are required to get Tcl to * compile under the various flavors of unix. *--------------------------------------------------------------------------- */ #include <errno.h> #include <fcntl.h> #ifdef HAVE_NET_ERRNO_H # include <net/errno.h> #endif #include <pwd.h> #include <signal.h> #ifdef HAVE_SYS_PARAM_H # include <sys/param.h> #endif #include <sys/types.h> #ifdef USE_DIRENT2_H # include "../compat/dirent2.h" #else #ifdef NO_DIRENT_H # include "../compat/dirent.h" #else # include <dirent.h> #endif #endif /* *--------------------------------------------------------------------------- * Parameterize for 64-bit filesystem support. *--------------------------------------------------------------------------- */ #ifdef HAVE_STRUCT_DIRENT64 typedef struct dirent64 Tcl_DirEntry; # define TclOSreaddir readdir64 #else typedef struct dirent Tcl_DirEntry; # define TclOSreaddir readdir #endif #ifdef HAVE_DIR64 typedef DIR64 TclDIR; # define TclOSopendir opendir64 # define TclOSrewinddir rewinddir64 # define TclOSclosedir closedir64 #else typedef DIR TclDIR; # define TclOSopendir opendir # define TclOSrewinddir rewinddir # define TclOSclosedir closedir #endif #ifdef HAVE_TYPE_OFF64_T typedef off64_t Tcl_SeekOffset; # define TclOSseek lseek64 # define TclOSopen open64 #else typedef off_t Tcl_SeekOffset; # define TclOSseek lseek # define TclOSopen open #endif #ifdef __CYGWIN__ #ifdef __cplusplus extern "C" { #endif /* Make some symbols available without including <windows.h> */ # define DWORD unsigned int # define CP_UTF8 65001 # define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x00000004 # define HANDLE void * # define HINSTANCE void * # define SOCKET unsigned int # define WSAEWOULDBLOCK 10035 typedef unsigned short WCHAR; #ifdef __clang__ #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wignored-attributes" #endif __declspec(dllimport) extern __stdcall int GetModuleHandleExW(unsigned int, const void *, void *); __declspec(dllimport) extern __stdcall int GetModuleFileNameW(void *, const void *, int); __declspec(dllimport) extern __stdcall int WideCharToMultiByte(int, int, const void *, int, char *, int, const char *, void *); __declspec(dllimport) extern __stdcall int MultiByteToWideChar(int, int, const char *, int, WCHAR *, int); __declspec(dllimport) extern __stdcall void OutputDebugStringW(const WCHAR *); __declspec(dllimport) extern __stdcall int IsDebuggerPresent(void); __declspec(dllimport) extern __stdcall int GetLastError(void); __declspec(dllimport) extern __stdcall int GetFileAttributesW(const WCHAR *); __declspec(dllimport) extern __stdcall int SetFileAttributesW(const WCHAR *, int); __declspec(dllimport) extern int cygwin_conv_path(int, const void *, void *, int); #ifdef __clang__ #pragma clang diagnostic pop #endif # define timezone _timezone extern int TclOSstat(const char *name, void *statBuf); extern int TclOSlstat(const char *name, void *statBuf); #ifdef __cplusplus } #endif #elif defined(HAVE_STRUCT_STAT64) && !defined(__APPLE__) # define TclOSstat(name, buf) stat64(name, (struct stat64 *)buf) # define TclOSlstat(name,buf) lstat64(name, (struct stat64 *)buf) #else # define TclOSstat(name, buf) stat(name, (struct stat *)buf) # define TclOSlstat(name, buf) lstat(name, (struct stat *)buf) #endif /* *--------------------------------------------------------------------------- * Miscellaneous includes that might be missing. *--------------------------------------------------------------------------- */ #include <sys/file.h> #ifdef HAVE_SYS_SELECT_H # include <sys/select.h> #endif #include <sys/stat.h> #ifdef TIME_WITH_SYS_TIME # include <sys/time.h> # include <time.h> #else #ifdef HAVE_SYS_TIME_H # include <sys/time.h> #else # include <time.h> #endif #endif #ifndef NO_SYS_WAIT_H # include <sys/wait.h> #endif #ifdef HAVE_INTTYPES_H # include <inttypes.h> #endif #include <limits.h> #ifdef HAVE_STDINT_H # include <stdint.h> #endif #ifdef HAVE_UNISTD_H # include <unistd.h> #else # include "../compat/unistd.h" #endif extern int TclUnixSetBlockingMode(int fd, int mode); #include <utime.h> /* *--------------------------------------------------------------------------- * Socket support stuff: This likely needs more work to parameterize for each * system. *--------------------------------------------------------------------------- */ #include <sys/socket.h> /* struct sockaddr, SOCK_STREAM, ... */ #ifndef NO_UNAME # include <sys/utsname.h> /* uname system call. */ #endif #include <netinet/in.h> /* struct in_addr, struct sockaddr_in */ #include <arpa/inet.h> /* inet_ntoa() */ #include <netdb.h> /* getaddrinfo() */ #ifdef NEED_FAKE_RFC2553 # include "../compat/fake-rfc2553.h" #endif /* *--------------------------------------------------------------------------- * Some platforms (e.g. SunOS) don't define FLT_MAX and FLT_MIN, so we look * for an alternative definition. If no other alternative is available we use * a reasonable guess. *--------------------------------------------------------------------------- */ #ifndef NO_FLOAT_H # include <float.h> #else #ifndef NO_VALUES_H # include <values.h> #endif #endif #ifndef FLT_MAX # ifdef MAXFLOAT # define FLT_MAX MAXFLOAT # else # define FLT_MAX 3.402823466E+38F # endif #endif #ifndef FLT_MIN # ifdef MINFLOAT # define FLT_MIN MINFLOAT # else # define FLT_MIN 1.175494351E-38F # endif #endif /* *--------------------------------------------------------------------------- * NeXT doesn't define O_NONBLOCK, so #define it here if necessary. *--------------------------------------------------------------------------- */ #ifndef O_NONBLOCK # define O_NONBLOCK 0x80 #endif /* *--------------------------------------------------------------------------- * The type of the status returned by wait varies from UNIX system to UNIX * system. The macro below defines it: *--------------------------------------------------------------------------- */ #ifdef _AIX # define WAIT_STATUS_TYPE pid_t #else #ifndef NO_UNION_WAIT # define WAIT_STATUS_TYPE union wait #else # define WAIT_STATUS_TYPE int #endif #endif /* *--------------------------------------------------------------------------- * Supply definitions for macros to query wait status, if not already defined * in header files above. *--------------------------------------------------------------------------- */ #ifndef WIFEXITED # define WIFEXITED(stat) (((*((int *) &(stat))) & 0xFF) == 0) #endif #ifndef WEXITSTATUS # define WEXITSTATUS(stat) (((*((int *) &(stat))) >> 8) & 0xFF) #endif #ifndef WIFSIGNALED # define WIFSIGNALED(stat) \ (((*((int *) &(stat)))) && ((*((int *) &(stat))) \ == ((*((int *) &(stat))) & 0x00FF))) #endif #ifndef WTERMSIG # define WTERMSIG(stat) ((*((int *) &(stat))) & 0x7F) #endif #ifndef WIFSTOPPED # define WIFSTOPPED(stat) (((*((int *) &(stat))) & 0xFF) == 0177) #endif #ifndef WSTOPSIG # define WSTOPSIG(stat) (((*((int *) &(stat))) >> 8) & 0xFF) #endif /* *--------------------------------------------------------------------------- * Define constants for waitpid() system call if they aren't defined by a * system header file. *--------------------------------------------------------------------------- */ #ifndef WNOHANG # define WNOHANG 1 #endif #ifndef WUNTRACED # define WUNTRACED 2 #endif /* *--------------------------------------------------------------------------- * Supply macros for seek offsets, if they're not already provided by an * include file. *--------------------------------------------------------------------------- */ #ifndef SEEK_SET # define SEEK_SET 0 #endif #ifndef SEEK_CUR # define SEEK_CUR 1 #endif #ifndef SEEK_END # define SEEK_END 2 #endif /* *--------------------------------------------------------------------------- * The stuff below is needed by the "time" command. If this system has no * gettimeofday call, then must use times() instead. *--------------------------------------------------------------------------- */ #ifdef NO_GETTOD # include <sys/times.h> #else # ifdef HAVE_BSDGETTIMEOFDAY # define gettimeofday BSDgettimeofday # endif #endif #ifdef GETTOD_NOT_DECLARED extern int gettimeofday(struct timeval *tp, struct timezone *tzp); #endif /* *--------------------------------------------------------------------------- * Define access mode constants if they aren't already defined. *--------------------------------------------------------------------------- */ #ifndef F_OK # define F_OK 00 #endif #ifndef X_OK # define X_OK 01 #endif #ifndef W_OK # define W_OK 02 #endif #ifndef R_OK # define R_OK 04 #endif /* *--------------------------------------------------------------------------- * Define FD_CLOEEXEC (the close-on-exec flag bit) if it isn't already * defined. *--------------------------------------------------------------------------- */ #ifndef FD_CLOEXEC # define FD_CLOEXEC 1 #endif /* *--------------------------------------------------------------------------- * On systems without symbolic links (i.e. S_IFLNK isn't defined) define * "lstat" to use "stat" instead. *--------------------------------------------------------------------------- */ #ifndef S_IFLNK # undef TclOSlstat # define lstat stat # define lstat64 stat64 # define TclOSlstat TclOSstat #endif /* *--------------------------------------------------------------------------- * Define macros to query file type bits, if they're not already defined. *--------------------------------------------------------------------------- */ #ifndef S_ISREG # ifdef S_IFREG # define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) # else # define S_ISREG(m) 0 # endif #endif /* !S_ISREG */ #ifndef S_ISDIR # ifdef S_IFDIR # define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) # else # define S_ISDIR(m) 0 # endif #endif /* !S_ISDIR */ #ifndef S_ISCHR # ifdef S_IFCHR # define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) # else # define S_ISCHR(m) 0 # endif #endif /* !S_ISCHR */ #ifndef S_ISBLK # ifdef S_IFBLK # define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) # else # define S_ISBLK(m) 0 # endif #endif /* !S_ISBLK */ #ifndef S_ISFIFO # ifdef S_IFIFO # define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) # else # define S_ISFIFO(m) 0 # endif #endif /* !S_ISFIFO */ #ifndef S_ISLNK # ifdef S_IFLNK # define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK) # else # define S_ISLNK(m) 0 # endif #endif /* !S_ISLNK */ #ifndef S_ISSOCK # ifdef S_IFSOCK # define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK) # else # define S_ISSOCK(m) 0 # endif #endif /* !S_ISSOCK */ /* *--------------------------------------------------------------------------- * Make sure that MAXPATHLEN and MAXNAMLEN are defined. *--------------------------------------------------------------------------- */ #ifndef MAXPATHLEN # ifdef PATH_MAX # define MAXPATHLEN PATH_MAX # else # define MAXPATHLEN 2048 # endif #endif #ifndef MAXNAMLEN # ifdef NAME_MAX # define MAXNAMLEN NAME_MAX # else # define MAXNAMLEN 255 # endif #endif /* *--------------------------------------------------------------------------- * The following macro defines the type of the mask arguments to select: *--------------------------------------------------------------------------- */ #ifndef NO_FD_SET # define SELECT_MASK fd_set #else /* NO_FD_SET */ # ifndef _AIX typedef long fd_mask; # endif /* !AIX */ # if defined(_IBMR2) # define SELECT_MASK void # else /* !defined(_IBMR2) */ # define SELECT_MASK int # endif /* defined(_IBMR2) */ #endif /* !NO_FD_SET */ /* *--------------------------------------------------------------------------- * Define "NBBY" (number of bits per byte) if it's not already defined. *--------------------------------------------------------------------------- */ #ifndef NBBY # define NBBY 8 #endif /* *--------------------------------------------------------------------------- * The following macro defines the number of fd_masks in an fd_set: *--------------------------------------------------------------------------- */ #ifndef FD_SETSIZE # ifdef OPEN_MAX # define FD_SETSIZE OPEN_MAX # else # define FD_SETSIZE 256 # endif #endif /* FD_SETSIZE */ #ifndef howmany # define howmany(x, y) (((x)+((y)-1))/(y)) #endif /* !defined(howmany) */ #ifndef NFDBITS # define NFDBITS NBBY*sizeof(fd_mask) #endif /* NFDBITS */ #define MASK_SIZE howmany(FD_SETSIZE, NFDBITS) /* *--------------------------------------------------------------------------- * Not all systems declare the errno variable in errno.h, so this file does it * explicitly. The list of system error messages also isn't generally declared * in a header file anywhere. *--------------------------------------------------------------------------- */ #ifdef NO_ERRNO extern int errno; #endif /* NO_ERRNO */ /* *--------------------------------------------------------------------------- * Not all systems declare all the errors that Tcl uses! Provide some * work-arounds... *--------------------------------------------------------------------------- */ #ifndef EOVERFLOW # ifdef EFBIG # define EOVERFLOW EFBIG # else /* !EFBIG */ # define EOVERFLOW EINVAL # endif /* EFBIG */ #endif /* EOVERFLOW */ /* *--------------------------------------------------------------------------- * Variables provided by the C library: *--------------------------------------------------------------------------- */ #if defined(__APPLE__) && defined(__DYNAMIC__) # include <crt_externs.h> # define environ (*_NSGetEnviron()) # define USE_PUTENV 1 #else # if defined(_sgi) || defined(__sgi) # define environ _environ # endif extern char ** environ; #endif /* *--------------------------------------------------------------------------- * Darwin specifc configure overrides. *--------------------------------------------------------------------------- */ #ifdef __APPLE__ /* *--------------------------------------------------------------------------- * Support for fat compiles: configure runs only once for multiple architectures *--------------------------------------------------------------------------- */ # if defined(__LP64__) && defined (NO_COREFOUNDATION_64) # undef HAVE_COREFOUNDATION # endif /* __LP64__ && NO_COREFOUNDATION_64 */ # include <sys/cdefs.h> # ifdef __DARWIN_UNIX03 # if __DARWIN_UNIX03 # undef HAVE_PUTENV_THAT_COPIES # else # define HAVE_PUTENV_THAT_COPIES 1 # endif # endif /* __DARWIN_UNIX03 */ /* *--------------------------------------------------------------------------- * Include AvailabilityMacros.h here (when available) to ensure any symbolic * MAC_OS_X_VERSION_* constants passed on the command line are translated. *--------------------------------------------------------------------------- */ # ifdef HAVE_AVAILABILITYMACROS_H # include <AvailabilityMacros.h> # endif /* *--------------------------------------------------------------------------- * Support for weak import. *--------------------------------------------------------------------------- */ # ifdef HAVE_WEAK_IMPORT # if !defined(HAVE_AVAILABILITYMACROS_H) || !defined(MAC_OS_X_VERSION_MIN_REQUIRED) # undef HAVE_WEAK_IMPORT # else # ifndef WEAK_IMPORT_ATTRIBUTE # define WEAK_IMPORT_ATTRIBUTE __attribute__((weak_import)) # endif # endif # endif /* HAVE_WEAK_IMPORT */ /* *--------------------------------------------------------------------------- * Support for MAC_OS_X_VERSION_MAX_ALLOWED define from AvailabilityMacros.h: * only use API available in the indicated OS version or earlier. *--------------------------------------------------------------------------- */ # ifdef MAC_OS_X_VERSION_MAX_ALLOWED # if MAC_OS_X_VERSION_MAX_ALLOWED < 1050 && defined(__LP64__) # undef HAVE_COREFOUNDATION # endif # if MAC_OS_X_VERSION_MAX_ALLOWED < 1040 # undef HAVE_OSSPINLOCKLOCK # undef HAVE_PTHREAD_ATFORK # undef HAVE_COPYFILE # endif # if MAC_OS_X_VERSION_MAX_ALLOWED < 1030 # ifdef TCL_THREADS /* prior to 10.3, realpath is not threadsafe, c.f. bug 711232 */ # define NO_REALPATH 1 # endif # undef HAVE_LANGINFO # endif # endif /* MAC_OS_X_VERSION_MAX_ALLOWED */ # if defined(HAVE_COREFOUNDATION) && defined(__LP64__) && \ defined(HAVE_WEAK_IMPORT) && MAC_OS_X_VERSION_MIN_REQUIRED < 1050 # warning "Weak import of 64-bit CoreFoundation is not supported, will not run on Mac OS X < 10.5." # endif /* * For now, test exec-17.1 fails (I/O setup after closing stdout) with * posix_spawnp(), but the classic implementation (based on fork()+execvp()) * works well under macOS. */ # undef HAVE_POSIX_SPAWNP # undef HAVE_VFORK #endif /* __APPLE__ */ /* *--------------------------------------------------------------------------- * The following macros and declarations represent the interface between * generic and unix-specific parts of Tcl. Some of the macros may override * functions declared in tclInt.h. *--------------------------------------------------------------------------- */ /* * The default platform eol translation on Unix is TCL_TRANSLATE_LF. */ #ifdef DJGPP #define TCL_PLATFORM_TRANSLATION TCL_TRANSLATE_CRLF typedef int socklen_t; #else #define TCL_PLATFORM_TRANSLATION TCL_TRANSLATE_LF #endif /* *--------------------------------------------------------------------------- * The following macros have trivial definitions, allowing generic code to * address platform-specific issues. *--------------------------------------------------------------------------- */ #define TclpReleaseFile(file) /* Nothing. */ /* *--------------------------------------------------------------------------- * The following defines wrap the system memory allocation routines. *--------------------------------------------------------------------------- */ #define TclpSysAlloc(size, isBin) malloc((size_t)(size)) #define TclpSysFree(ptr) free((char *)(ptr)) #define TclpSysRealloc(ptr, size) realloc((char *)(ptr), (size_t)(size)) /* *--------------------------------------------------------------------------- * The following macros and declaration wrap the C runtime library functions. *--------------------------------------------------------------------------- */ #define TclpExit exit #ifdef TCL_THREADS # include <pthread.h> #endif /* TCL_THREADS */ /* FIXME - Hyper-enormous platform assumption! */ #ifndef AF_INET6 # define AF_INET6 10 #endif /* *--------------------------------------------------------------------------- * Set of MT-safe implementations of some known-to-be-MT-unsafe library calls. * Instead of returning pointers to the static storage, those return pointers * to the TSD data. *--------------------------------------------------------------------------- */ #include <pwd.h> #include <grp.h> extern struct passwd * TclpGetPwNam(const char *name); extern struct group * TclpGetGrNam(const char *name); extern struct passwd * TclpGetPwUid(uid_t uid); extern struct group * TclpGetGrGid(gid_t gid); extern struct hostent * TclpGetHostByName(const char *name); extern struct hostent * TclpGetHostByAddr(const char *addr, int length, int type); extern void *TclpMakeTcpClientChannelMode( void *tcpSocket, int mode); #endif /* _TCLUNIXPORT */ /* * Local Variables: * mode: c * c-basic-offset: 4 * fill-column: 78 * End: */
Close