Main Page | Data Structures | File List | Globals

include/sysdep.h

00001 /*
00002 ** mouse:~ppr/src/include/sysdep.h
00003 ** Copyright 1995--2004, Trinity College Computing Center.
00004 ** Written by David Chappell.
00005 **
00006 ** Redistribution and use in source and binary forms, with or without
00007 ** modification, are permitted provided that the following conditions are met:
00008 **
00009 ** * Redistributions of source code must retain the above copyright notice,
00010 ** this list of conditions and the following disclaimer.
00011 **
00012 ** * Redistributions in binary form must reproduce the above copyright
00013 ** notice, this list of conditions and the following disclaimer in the
00014 ** documentation and/or other materials provided with the distribution.
00015 **
00016 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00017 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00018 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00019 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
00020 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
00021 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00022 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00023 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00024 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00025 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00026 ** POSSIBILITY OF SUCH DAMAGE.
00027 **
00028 ** Last modified 4 February 2004.
00029 */
00030 
00031 /*
00032 ** Try to define some things properly for the
00033 ** system we are compiling on.
00034 **
00035 ** Note that this file is not named in any of the make files.  That
00036 ** means that if you modify it you will have to do a "make clean".
00037 **
00038 ** This file is included twice, one before any system header files
00039 ** are included, once after.  The first time it is include, the
00040 ** symbols PASS1 is defined, the second time the symbol PASS2
00041 ** is defined.
00042 **
00043 ** =====================================================================
00044 ** When PASS1 is defined, this file should define any of the following
00045 ** symbols which may be necessary:
00046 ** =====================================================================
00047 **
00048 ** #define HAVE_STRSIGNAL 1
00049 **                      strsignal() is in library.  If this is not set,
00050 **                      PPR will provide one.
00051 **
00052 ** #define HAVE_SNPRINTF 1
00053 **                      snprintf() is in the library.  If this is not set,
00054 **                      PPR will provide one.
00055 **
00056 ** #define HAVE_VSNPRINTF 1
00057 **                      vsnprintf() is in the library.  If this is not set,
00058 **                      PPR will provide one.
00059 **
00060 ** #define HAVE_STATVFS 1
00061 **                      Use statvfs() to find disk free space.
00062 **                      This implies that sys/statvfs.h should be
00063 **                      included.
00064 **
00065 ** #define HAVE_STATFS 1
00066 **                      Use statfs() to find disk free space.
00067 **
00068 ** #define HAVE_SYS_VFS_H 1
00069 **                      Use sys/vfs.h instead of sys/mount.h for statfs().
00070 **
00071 ** #define HAVE_TERMIOS_H 1
00072 **                      The system has termios.h and its functions.
00073 **                      (Currently, all of the systems define this.)
00074 **
00075 ** #define HAVE_PUTENV 1
00076 **                      putenv() is available.
00077 **
00078 ** #define HAVE_UNSETENV
00079 **                      unsetenv() is available.  This is used by prune_env().
00080 **
00081 ** #define HAVE_SPAWN 1 OK to spawn*() instead of fork() and exec*().
00082 **
00083 ** #define HAVE_FORK 1  C library has a working fork() function.
00084 **                      (PPR will not be cripled if this is not defined.)
00085 **
00086 ** #define HAVE_MKFIFO 1
00087 **                      Have a working mkfifo() function.
00088 **
00089 ** #define HAVE_SYS_MODEM_H 1
00090 **                      Define this if TIOCM_CTS, TIOCM_DSR, and TIOCM_CAR
00091 **                      (values for the TIOCMGET ioctl) are defined in
00092 **                      sys/modem.h.
00093 **
00094 ** #define HAVE_H_ERRNO 1
00095 **                      Resolver library functions such as gethostbyname()
00096 **                      use h_errno to return error code.
00097 **
00098 ** #define HAVE_MKSTEMP 1
00099 **                      The BSD/GNU function mkstemp() is available.  This
00100 **                      is a replacement for POSIX mktemp() which avoids
00101 **                      symbolic link exploits.
00102 **
00103 ** #define HAVE_NETGROUP 1
00104 **                      Do we have netdb.h and innetgrp()?
00105 **
00106 ** #define HAVE_INITGROUPS 1
00107 **                      Do we have initgroups()?
00108 **
00109 ** =====================================================================
00110 ** When PASS2 is defined, this file should define the paths to various
00111 ** programs and correct any mistakes the system include files may
00112 ** have made.
00113 ** =====================================================================
00114 **
00115 ** #define SENDMAIL_PATH "/usr/lib/sendmail"
00116 **                      The path to sendmail or compatible program
00117 **                      If you wish to change this, you must #undef
00118 **                      it first since it is already defined as
00119 **                      "/usr/lib/sendmail".
00120 **
00121 ** #define LPR_EXTENSIONS_OSF 1
00122 **                      Define this if your lpr has the DEC OSF extensions
00123 **                      such as the -I, -j, -K, -N, -o, -O, and -x switches.
00124 **
00125 ** #define LP_LIST_PRINTERS "/etc/lp/printers"
00126 **                      This can be defined as
00127 **                      the name of a directory which will contain
00128 **                      one entry (either a file or a subdirectory)
00129 **                      named after each printer.  There is no
00130 **                      default value.
00131 **
00132 ** #define LP_LIST_CLASSES "/etc/lp/classes"
00133 **                      This can be defined as the
00134 **                      name of a directory which will contain one entry
00135 **                      (either a file or a subdirectory) named after
00136 **                      each class (group).  There is no default
00137 **                      value.
00138 **
00139 ** #define LP_LPSTAT_BROKEN 1
00140 **                      This is defined if lpstat is so old that it cannot
00141 **                      parse the line "lpstat -o myprinter".
00142 **
00143 ** #define SAFE_PATH "/bin:/usr/bin"
00144 **                      Defines a nice, secure path for filters, interfaces,
00145 **                      responders, and other children of ppr and pprd.
00146 **                      Other reasonable values are "/bin"
00147 **                      and "/bin:/usr/bin:/usr/local/bin".
00148 **
00149 ** #define LATE_UNLINK 1
00150 **                      This should be defined if unlink()ing an open file
00151 **                      is not allowed or causes bad things to happen.  Though
00152 **                      common in Unix implementations, the ability to remove
00153 **                      all names for an open file is not a Posix requirement.
00154 **                      (This option is not fully implemented.)
00155 **
00156 ** #define SET_BACKSPACE 1
00157 **                      Define this if ppop and ppad should do a stty to set
00158 **                      the backspace to control-h when entering interactive
00159 **                      mode.
00160 **
00161 ** #define BIND_ACCESS_BUG 1
00162 **                      Define this if bind() can't assign a reserved port
00163 **                      number unless the socket was opened by root.
00164 **
00165 ** #define BROKEN_SETUID_BIT 1
00166 **                      Set this if the setuid and setgid bits are ignored.
00167 **                      At the moment, this causes ppr and pprd to ommit
00168 **                      some startup tests.
00169 **
00170 ** #define COLON_FILENAME_BUG 1
00171 **                      Set this if colons in filenames cause problems.
00172 **                      Defining this causes fname_sprintf() to change
00173 **                      colons into excalmation points.
00174 */
00175 
00176 /* This doesn't work yet. */
00177 #ifdef PPR_AUTOCONF
00178 #include "../config.h"
00179 #else
00180 
00181 /*
00182 ** These will be the most normal values.
00183 ** They serve as defaults.
00184 */
00185 #ifdef PASS1
00186 #define HAVE_STRSIGNAL 1
00187 #define HAVE_SNPRINTF 1
00188 #define HAVE_VSNPRINTF 1
00189 #define HAVE_FORK 1
00190 #define HAVE_PUTENV 1
00191 #define HAVE_TERMIOS_H 1
00192 #define HAVE_MKFIFO 1
00193 #define HAVE_NETGROUP 1
00194 #define HAVE_SETREUID 1
00195 #define HAVE_SETREGID 1
00196 #endif
00197 
00198 #ifdef PASS2
00199 #define SENDMAIL_PATH "/usr/lib/sendmail"       /* mail program for alerting */
00200 #define SAFE_PATH "/bin:/usr/bin"               /* Secure path */
00201 #endif
00202 
00203 /*========================================================================
00204 ** AT&T System V Release 4.0 for the AT&T WGS series
00205 ** of 386/486 microcomputers.  This is the origional
00206 ** platform for PPR.
00207 **
00208 ** This port has not been tested recently.
00209 **
00210 ** Sample machine: alice
00211 ========================================================================*/
00212 #ifdef PPR_ATTWGS
00213 #ifdef PASS1
00214 
00215 #undef HAVE_STRSIGNAL
00216 #undef HAVE_SNPRINTF
00217 #undef HAVE_VSNPRINTF
00218 
00219 #define BACKSPACE 1
00220 #define HAVE_STATVFS 1
00221 
00222 #endif
00223 #ifdef PASS2
00224 
00225 /* /bin is a link to /usr/bin */
00226 #undef SAFE_PATH
00227 #define SAFE_PATH "/usr/bin"
00228 
00229 #undef SENDMAIL_PATH
00230 #define SENDMAIL_PATH "/usr/ucblib/sendmail"
00231 
00232 /* The LP paths are just a guess!!! */
00233 #define LP_LIST_PRINTERS "/var/spool/lp/admins/lp/interfaces"
00234 #define LP_LIST_CLASSES "/var/spool/lp/admins/lp/classes"
00235 
00236 #ifndef S_ISLNK
00237 #define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
00238 #endif
00239 
00240 /*
00241 ** This Unix has a lot of errors in its include files.
00242 ** We will provide prototypes for a number of functions whose
00243 ** protypes are missing from the include files.
00244 ** For the socket functions, we must include sys/socket.h now
00245 ** in order for the definitions to make sense.
00246 */
00247 int fchmod(int fildes, mode_t mode);
00248 #include <sys/socket.h>
00249 int getpeername(int s, struct sockaddr *name, int *namelen);
00250 int socket(int domain, int type, int protocol);
00251 int connect(int s, struct sockaddr *name, int namelen);
00252 int setsockopt(int s, int level, int optname, char *optval, int optlen);
00253 int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *execptfds, struct timeval *timeout);
00254 
00255 #endif /* PASS2 */
00256 #endif /* PPR_ATTWGS */
00257 
00258 /*========================================================================
00259 ** SunOS 5.0 thru 5.5.1 (Solaris 2.0 thru 5.5.1)
00260 ** See below for SunOS 5.6 and later.
00261 **
00262 ** Sample machine: Lor?
00263 ========================================================================*/
00264 #ifdef PPR_SUNOS_5
00265 #ifdef PASS1
00266 
00267 /* These don't appear until 5.6 */
00268 #undef HAVE_SNPRINTF
00269 #undef HAVE_VSNPRINTF
00270 
00271 #define HAVE_STATVFS 1
00272 
00273 #endif
00274 #ifdef PASS2
00275 
00276 /* /bin is a link to /usr/bin */
00277 #undef SAFE_PATH
00278 #define SAFE_PATH "/usr/bin"
00279 
00280 #define LP_LIST_PRINTERS "/etc/lp/printers"
00281 #define LP_LIST_CLASSES "/etc/lp/classes"
00282 
00283 /* Work around difference in when access
00284    to reserved ports is permitted. */
00285 #define BIND_ACCESS_BUG 1
00286 
00287 #endif /* PASS2 */
00288 #endif /* PPR_SUNOS_5 */
00289 
00290 /*========================================================================
00291 ** NetBSD 1.0
00292 **
00293 ** Sample machine:
00294 ========================================================================*/
00295 #ifdef PPR_NETBSD
00296 #ifdef PASS1
00297 
00298 #define HAVE_STATFS 1
00299 #define HAVE_INITGROUPS 1
00300 
00301 #endif
00302 #ifdef PASS2
00303 
00304 #define setsid() setpgrp(0, getpid()) /* setsid() (Posix?) is missing */
00305 #undef SENDMAIL_PATH
00306 #define SENDMAIL_PATH "/usr/sbin/sendmail"
00307 
00308 #endif /* PASS2 */
00309 #endif /* PPR_NETBSD */
00310 
00311 /*========================================================================
00312 ** Linux
00313 ** Linux for i386 is the principal development platform.
00314 ** Linux for DEC Alpha has received some testing at Trinity College.
00315 **
00316 ** Sample machine: Mouse
00317 ========================================================================*/
00318 #ifdef PPR_LINUX
00319 #ifdef PASS1
00320 
00321 #define HAVE_STATFS 1
00322 #define HAVE_SYS_VFS_H 1
00323 #define HAVE_UNSETENV 1
00324 #define HAVE_H_ERRNO 1
00325 #define HAVE_MKSTEMP 1
00326 #define HAVE_INITGROUPS 1
00327 
00328 /* This is to test the substitute code which normally isn't
00329    used on Linux systems. */
00330 #if 0
00331 #undef HAVE_STRSIGNAL
00332 #undef HAVE_SNPRINTF
00333 #undef HAVE_VSNPRINTF
00334 #undef HAVE_MKSTEMP
00335 #endif
00336 
00337 #endif
00338 #ifdef PASS2
00339 
00340 #undef SENDMAIL_PATH
00341 #define SENDMAIL_PATH "/usr/sbin/sendmail"
00342 
00343 /* uClibc doesn't support NIS.  We have to put this in pass 2 because
00344    no uClibc headers have been read during pass 1. */
00345 #ifdef __UCLIBC__
00346 #undef HAVE_NETGROUP
00347 #endif
00348 
00349 /* Save for dietlibc. */
00350 #ifdef __dietlibc__
00351 #undef HAVE_NETGROUP
00352 #endif
00353 
00354 #endif /* PASS2 */
00355 #endif /* PPR_LINUX */
00356 
00357 /*========================================================================
00358 ** SunOS 4.1.3_U1
00359 **
00360 ** Sample machine:
00361 ========================================================================*/
00362 #ifdef PPR_SUNOS4
00363 #ifdef PASS1
00364 
00365 #undef HAVE_STRSIGNAL
00366 #undef HAVE_SNPRINTF
00367 #undef HAVE_VSNPRINTF
00368 #define HAVE_STATFS 1
00369 #define HAVE_SYS_VFS_H 1
00370 
00371 #endif
00372 #ifdef PASS2
00373 
00374 /* /bin is a link to /usr/bin */
00375 #undef SAFE_PATH
00376 #define SAFE_PATH "/usr/bin"
00377 
00378 #ifndef WCOREDUMP
00379 #define WCOREDUMP(stat) ((stat)&0200)
00380 #endif
00381 
00382 #define difftime(t1,t0) ((double)((t1)-(t0)))
00383 
00384 #define memmove(ARG1,ARG2,LENGTH) bcopy(ARG1,ARG2,LENGTH)
00385 
00386 #endif /* PASS2 */
00387 #endif /* PPR_SUNOS4 */
00388 
00389 /*========================================================================
00390 ** OSF/1 3.2 or Digital Unix 4.0 for DEC Alpha
00391 **
00392 ** Sample machine: Heart
00393 ========================================================================*/
00394 #ifdef PPR_OSF1
00395 #ifdef PASS1
00396 
00397 #undef HAVE_STRSIGNAL
00398 #undef HAVE_SNPRINTF
00399 #undef HAVE_VSNPRINTF
00400 #define HAVE_STATVFS 1
00401 
00402 #endif
00403 #ifdef PASS2
00404 
00405 /* /bin is a link to /usr/bin */
00406 #undef SAFE_PATH
00407 #define SAFE_PATH "/usr/bin"
00408 
00409 /* It looks like lp is just a front end to lpr: */
00410 #define LPR_EXTENSIONS_OSF 1
00411 
00412 #endif /* PASS2 */
00413 #endif /* PPR_OSF1 */
00414 
00415 /*========================================================================
00416 ** SGI IRIX 6.3
00417 **
00418 ** Sample machine: Ermac
00419 ========================================================================*/
00420 #ifdef PPR_IRIX
00421 #ifdef PASS1
00422 
00423 #undef HAVE_STRSIGNAL
00424 #undef HAVE_SNPRINTF
00425 #undef HAVE_VSNPRINTF
00426 #define HAVE_STATVFS 1          /* we have statvfs() */
00427 
00428 #endif
00429 #ifdef PASS2
00430 
00431 /* /bin is a link to /usr/bin */
00432 #undef SAFE_PATH
00433 #define SAFE_PATH "/usr/bin"
00434 
00435 #define LP_LIST_PRINTERS "/var/spool/lp/interface"
00436 #define LP_LIST_CLASSES "/var/spool/lp/class"
00437 
00438 #endif
00439 #endif /* PPR_IRIX */
00440 
00441 /*========================================================================
00442 ** MS-Windows 95 or NT with Cygwin 1.1
00443 ** Sample machine: Jane
00444 ========================================================================*/
00445 #ifdef PPR_CYGWIN
00446 #ifdef PASS1
00447 
00448 #undef HAVE_SNPRINTF
00449 #undef HAVE_VSNPRINTF
00450 #undef HAVE_MKFIFO
00451 #undef HAVE_NETGROUP
00452 
00453 #endif
00454 #ifdef PASS2
00455 
00456 #define WCOREDUMP(a) 0          /* not supported? */
00457 #define BROKEN_SETUID_BIT 1
00458 #define COLON_FILENAME_BUG 1
00459 #undef SAFE_PATH
00460 #define SAFE_PATH "/bin:/usr/bin:/winnt/system32:/winnt"
00461 
00462 int seteuid(uid_t);             /* not defined in header files */
00463 
00464 #define setreuid(a,b) setuid(a)
00465 #define setregid(a,b) setgid(a)
00466 
00467 #endif /* PASS2 */
00468 #endif /* PPR_CYGWIN */
00469 
00470 /*========================================================================
00471 ** MS-Windows 95/NT with AT&T UWIN 2.9
00472 ** Sample machine: Jane
00473 ========================================================================*/
00474 #ifdef PPR_UWIN
00475 #ifdef PASS1
00476 
00477 /* As of 2.25: */
00478 #undef HAVE_STRSIGNAL
00479 
00480 #endif
00481 #ifdef PASS2
00482 
00483 /* Missing from 1.51: */
00484 #define WCOREDUMP(a) 0
00485 
00486 /* This is missing from UWIN 1.51: */
00487 #define setegid(x) 0
00488 
00489 /* #define BROKEN_SETUID_BIT 1 */
00490 
00491 #define COLON_FILENAME_BUG 1
00492 
00493 #undef SAFE_PATH
00494 #define SAFE_PATH "/usr/bin"
00495 
00496 #endif /* PASS2 */
00497 #endif /* __UWIN__ */
00498 
00499 /*========================================================================
00500 ** HP-UX 10.x
00501 **
00502 ** Sample machine: Micro1
00503 ========================================================================*/
00504 #ifdef PPR_HPUX
00505 #ifdef PASS1
00506 
00507 #undef HAVE_STRSIGNAL
00508 #undef HAVE_SNPRINTF
00509 #undef HAVE_VSNPRINTF
00510 #define HAVE_STATVFS 1
00511 #define HAVE_SYS_MODEM_H 1
00512 
00513 #endif
00514 #ifdef PASS2
00515 
00516 /* /bin is a link to /usr/bin */
00517 #undef SAFE_PATH
00518 #define SAFE_PATH "/usr/bin"
00519 
00520 #define LP_LPSTAT_BROKEN 1
00521 #define LP_LIST_PRINTERS "/etc/lp/interface"
00522 #define LP_LIST_CLASSES "/etc/lp/class"
00523 
00524 #define seteuid(x)     setresuid(-1,(x),-1)
00525 #define setegid(x)     setresgid(-1,(x),-1)
00526 #define setreuid(x,y)  setresuid((x),(y),-1)
00527 #define setregid(x,y)  setresgid((x),(y),-1)
00528 
00529 #endif /* PASS2 */
00530 #endif /* PPR_HPUX */
00531 
00532 /*========================================================================
00533 ** DEC ULTRIX 4.4 (RISC DECstation, similiar to OSF1, but older)
00534 **
00535 ** Sample machine:
00536 ========================================================================*/
00537 #ifdef PPR_ULTRIX
00538 #ifdef PASS1
00539 
00540 #undef HAVE_STRSIGNAL
00541 #undef HAVE_SNPRINTF
00542 #undef HAVE_VSNPRINTF
00543 
00544 #endif
00545 #ifdef PASS2
00546 
00547 #define LPR_EXTENSIONS_OSF 1
00548 
00549 #ifndef S_ISLNK
00550 #define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
00551 #endif
00552 
00553 #ifndef WCOREDUMP
00554 #define WCOREDUMP(a) 0
00555 #endif
00556 
00557 #endif /* PASS2 */
00558 #endif /* PPR_ULTRIX */
00559 
00560 /*========================================================================
00561 ** SunOS 5.6 thru 5.7 (Solaris 2.6 thru 7)
00562 **
00563 ** Sample machine: shakti
00564 ========================================================================*/
00565 #ifdef PPR_SUNOS_5_6
00566 #ifdef PASS1
00567 
00568 #define HAVE_STATVFS 1
00569 
00570 #endif
00571 #ifdef PASS2
00572 
00573 /* /bin is a link to /usr/bin */
00574 #undef SAFE_PATH
00575 #define SAFE_PATH "/usr/bin"
00576 
00577 #define LP_LIST_PRINTERS "/etc/lp/printers"
00578 #define LP_LIST_CLASSES "/etc/lp/classes"
00579 
00580 /* Work around difference in when access
00581    to reserved ports is permitted. */
00582 #define BIND_ACCESS_BUG 1
00583 
00584 #endif /* PASS2 */
00585 #endif /* PPR_SUNOS_5_6 */
00586 
00587 /*========================================================================
00588 ** FreeBSD 3.1R
00589 **
00590 ** Sample machine:
00591 ========================================================================*/
00592 #ifdef PPR_FREEBSD
00593 #ifdef PASS1
00594 
00595 #undef HAVE_STRSIGNAL
00596 #define HAVE_STATFS 1
00597 #define HAVE_INITGROUPS 1
00598 
00599 #endif
00600 #ifdef PASS2
00601 
00602 #undef SAFE_PATH
00603 #define SAFE_PATH "/bin:/usr/bin:/usr/local/bin"
00604 #undef SENDMAIL_PATH
00605 #define SENDMAIL_PATH "/usr/sbin/sendmail"
00606 
00607 #endif /* PASS2 */
00608 #endif /* PPR_FREEBSD */
00609 
00610 /*========================================================================
00611 ** Darwin (MacOS 10.x)
00612 ========================================================================*/
00613 #ifdef PPR_DARWIN
00614 #ifdef PASS1
00615 #undef HAVE_STRSIGNAL
00616 #define HAVE_UNSETENV 1
00617 #endif
00618 
00619 #ifdef PASS2
00620 #undef SAFE_PATH
00621 #define SAFE_PATH "/sw/bin:/usr/bin:/bin"
00622 
00623 #endif
00624 #endif /* PPR_DARWIN */
00625 
00626 /*========================================================================
00627 ** Win32 testing on Linux
00628 ========================================================================*/
00629 #ifdef PPR_WIN32_TESTING
00630 #ifdef PASS1
00631 
00632 #undef HAVE_MKFIFO
00633 #undef HAVE_STATFS
00634 #undef HAVE_SYS_VFS_H
00635 #undef HAVE_UNSETENV
00636 #undef SENDMAIL_PATH
00637 #define SENDMAIL_PATH "/usr/sbin/sendmail"
00638 #endif
00639 #ifdef PASS2
00640 
00641 #define COLON_FILENAME_BUG 1
00642 
00643 #endif /* PASS2 */
00644 #endif /* WIN32_TESTING */
00645 
00646 /*======================================================================*/
00647 
00648 #endif /* Not autoconf */
00649 
00650 /* end of file */
00651 

Generated on Fri Feb 20 15:17:48 2004 for PPR Libraries by doxygen 1.3.5