1
/* config.h.in. Generated from configure.in by autoheader. */
2
/* Copyright (c) 1993-2000
3
* Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
4
* Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
5
* Copyright (c) 1987 Oliver Laumann
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 2, or (at your option)
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
17
* You should have received a copy of the GNU General Public License
18
* along with this program (see the file COPYING); if not, write to the
19
* Free Software Foundation, Inc.,
20
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
22
****************************************************************
30
/**********************************************************************
32
* User Configuration Section
36
* Maximum of simultaneously allowed windows per screen session.
43
* Define SOCKDIR to be the directory to contain the named sockets
44
* screen creates. This should be in a common subdirectory, such as
45
* /usr/local or /tmp. It makes things a little more secure if you
46
* choose a directory which is not writable by everyone or where the
47
* "sticky" bit is on, but this isn't required.
48
* If SOCKDIR is not defined screen will put the named sockets in
49
* the user's home directory. Notice that this can cause you problems
50
* if some user's HOME directories are AFS- or NFS-mounted. Especially
51
* AFS is unlikely to support named sockets.
53
* Screen will name the subdirectories "S-$USER" (e.g /tmp/S-davison).
58
* Define this if the SOCKDIR is not shared between hosts.
60
#define SOCKDIR_IS_LOCAL_TO_HOST
63
* Screen sources two startup files. First a global file with a path
64
* specified here, second your local $HOME/.screenrc
65
* Don't define this, if you don't want it.
68
# define ETCSCREENRC "/usr/local/etc/screenrc"
72
* Screen can look for the environment variable $SYSSCREENRC and -if it
73
* exists- load the file specified in that variable as global screenrc.
74
* If you want to enable this feature, define ALLOW_SYSSCREENRC to one (1).
75
* Otherwise ETCSCREENRC is always loaded.
77
#define ALLOW_SYSSCREENRC 1
80
* Screen needs encoding files for the translation of utf8
81
* into some encodings, e.g. JIS, BIG5.
82
* Only needed if FONT, ENCODINGS and UTF8 are defined.
84
#ifndef SCREENENCODINGS
85
# define SCREENENCODINGS "/usr/local/lib/screen/encodings"
88
* Define CHECKLOGIN to force Screen users to enter their Unix password
89
* in addition to the screen password.
91
* Define NOSYSLOG if yo do not have logging facilities. Currently
92
* syslog() will be used to trace ``su'' commands only.
99
* define PTYMODE if you do not like the default of 0622, which allows
100
* public write to your pty.
101
* define PTYGROUP to some numerical group-id if you do not want the
102
* tty to be in "your" group.
103
* Note, screen is unable to change mode or group of the pty if it
104
* is not installed with sufficient privilege. (e.g. set-uid-root)
105
* define PTYROFS if the /dev/pty devices are mounted on a read-only
106
* filesystem so screen should not even attempt to set mode or group
107
* even if running as root (e.g. on TiVo).
114
* If screen is NOT installed set-uid root, screen can provide tty
115
* security by exclusively locking the ptys. While this keeps other
116
* users from opening your ptys, it also keeps your own subprocesses
117
* from being able to open /dev/tty. Define LOCKPTY to add this
123
* If you'd rather see the status line on the first line of your
124
* terminal rather than the last, define TOPSTAT.
129
* define DETACH can detach a session. An absolute 'must'.
134
* here come the erlangen extensions to screen:
135
* define LOCK if you want to use a lock program for a screenlock.
136
* define PASSWORD for secure reattach of your screen.
137
* define COPY_PASTE to use the famous hacker's treasure zoo.
138
* define POW_DETACH to have a detach_and_logout key (requires DETACH).
139
* define REMOTE_DETACH (-d option) to move screen between terminals.
140
* define AUTO_NUKE to enable Tim MacKenzies clear screen nuking
141
* define PSEUDOS to allow window input/output filtering
142
* define MULTI to allow multiple attaches.
143
* define MULTIUSER to allow other users attach to your session
144
* (if they are in the acl, of course)
145
* define MAPKEYS to include input keyboard translation.
146
* define FONT to support ISO2022/alternet charset support
147
* define COLOR to include ansi color support. This may expose
148
* a bug in x11r6-color-xterm.
149
* define DW_CHARS to include support for double-width character
151
* define ENCODINGS to include support for encodings like euc or big5.
152
* Needs FONT to work.
153
* define UTF8 if you want support for UTF-8 encoding.
154
* Needs FONT and ENCODINGS to work.
155
* define COLORS16 if you want 16 colors.
156
* Needs COLOR to work.
157
* define BUILTIN_TELNET to add telnet support to screen.
158
* Syntax: screen //telnet host [port]
159
* define RXVT_OSC if you want support for rxvts special
160
* change fgcolor/bgcolor/bgpicture sequences
167
# define REMOTE_DETACH
182
#endif /* SIMPLESCREEN */
184
#undef BUILTIN_TELNET
190
* If you have a braille display you should define HAVE_BRAILLE.
191
* The code inside #ifdef HAVE_BRAILLE was contributed by Hadi Bargi
192
* Rangin (bargi@dots.physics.orst.edu).
193
* WARNING: this is more or less unsupported code, it may be full of
194
* bugs leading to security holes, enable at your own risk!
200
* As error messages are mostly meaningless to the user, we
201
* try to throw out phrases that are somewhat more familiar
202
* to ...well, at least familiar to us NetHack players.
206
#endif /* NONETHACK */
209
* If screen is installed with permissions to update /etc/utmp (such
210
* as if it is installed set-uid root), define UTMPOK.
214
/* Set LOGINDEFAULT to one (1)
215
* if you want entries added to /etc/utmp by default, else set it to
217
* LOGINDEFAULT will be one (1) whenever LOGOUTOK is undefined!
219
#define LOGINDEFAULT 1
221
/* Set LOGOUTOK to one (1)
222
* if you want the user to be able to log her/his windows out.
223
* (Meaning: They are there, but not visible in /etc/utmp).
224
* Disabling this feature only makes sense if you have a secure /etc/utmp
226
* Negative examples: suns usually have a world writable utmp file,
227
* xterm will run perfectly without s-bit.
229
* If LOGOUTOK is undefined and UTMPOK is defined, all windows are
230
* initially and permanently logged in.
232
* Set CAREFULUTMP to one (1) if you want that users have at least one
233
* window per screen session logged in.
240
* If UTMPOK is defined and your system (incorrectly) counts logins by
241
* counting non-null entries in /etc/utmp (instead of counting non-null
242
* entries with no hostname that are not on a pseudo tty), define USRLIMIT
243
* to have screen put an upper-limit on the number of entries to write
244
* into /etc/utmp. This helps to keep you from exceeding a limited-user
250
* both must be defined if you want to favor tcsendbreak over
251
* other calls to generate a break condition on serial lines.
252
* (Do not bother, if you are not using plain tty windows.)
254
#define POSIX_HAS_A_GOOD_TCSENDBREAK
255
#define SUNOS4_AND_WE_TRUST_TCSENDBREAK
258
* to lower the interrupt load on the host machine, you may want to
259
* adjust the VMIN and VTIME settings used for plain tty windows.
260
* See the termio(4) manual page (Non-Canonical Mode Input Processing)
262
* if undefined, VMIN=1, VTIME=0 is used as a default - this gives you
263
* best user responsiveness, but highest interrupt frequency.
264
* (Do not bother, if you are not using plain tty windows.)
270
* looks like the above values are ignored by setting FNDELAY.
271
* This is default for all pty/ttys, you may disable it for
272
* ttys here. After playing with it for a while, one may find out
273
* that this feature may cause screen to lock up.
276
# define TTY_DISABLE_FNBLOCK /* select barfs without it ... */
281
* Some terminals, e.g. Wyse 120, use a bitfield to select attributes.
282
* This doesn't work with the standard so/ul/m? terminal entries,
283
* because they will cancel each other out.
284
* On TERMINFO machines, "sa" (sgr) may work. If you want screen
285
* to switch attributes only with sgr, define USE_SGR.
286
* This is *not* recomended, do this only if you must.
292
* Define USE_LOCALE if you want screen to use the locale names
293
* for the name of the month and day of the week.
298
* Define USE_PAM if your system supports PAM (Pluggable Authentication
299
* Modules) and you want screen to use it instead of calling crypt().
300
* (You may also need to add -lpam to LIBS in the Makefile.)
305
* Define CHECK_SCREEN_W if you want screen to set TERM to screen-w
306
* if the terminal width is greater than 131 columns. No longer needed
307
* on modern systems which use $COLUMNS or the tty settings instead.
309
#undef CHECK_SCREEN_W
311
/**********************************************************************
313
* End of User Configuration Section
315
* Rest of this file is modified by 'configure'
316
* Change at your own risk!
321
* Some defines to identify special unix variants
327
/* #ifndef __osf__ */
345
#ifndef _POSIX_SOURCE
350
* Define POSIX if your system supports IEEE Std 1003.1-1988 (POSIX).
355
* Define BSDJOBS if you have BSD-style job control (both process
356
* groups and a tty that deals correctly with them).
361
* Define TERMIO if you have struct termio instead of struct sgttyb.
362
* This is usually the case for SVID systems, where BSD uses sgttyb.
363
* POSIX systems should define this anyway, even though they use
369
* Define CYTERMIO if you have cyrillic termio modes.
374
* Define TERMINFO if your machine emulates the termcap routines
375
* with the terminfo database.
376
* Thus the .screenrc file is parsed for
377
* the command 'terminfo' and not 'termcap'.
382
* If your library does not define ospeed, define this.
387
* Define SYSV if your machine is SYSV complient (Sys V, HPUX, A/UX)
394
* Define SIGVOID if your signal handlers return void. On older
395
* systems, signal returns int, but on newer ones, it returns void.
400
* Define USESIGSET if you have sigset for BSD 4.1 reliable signals.
405
* Define SYSVSIGS if signal handlers must be reinstalled after
406
* they have been called.
411
* Define BSDWAIT if your system defines a 'union wait' in <sys/wait.h>
413
* Only allow BSDWAIT i.e. wait3 on nonposix systems, since
414
* posix implies wait(3) and waitpid(3). vdlinden@fwi.uva.nl
422
* On RISCOS we prefer wait2() over wait3(). rouilj@sni-usa.com
429
* Define HAVE_DIRENT_H if your system has <dirent.h> instead of
435
* If your system has getutent(), pututline(), etc. to write to the
436
* utmp file, define GETUTENT.
441
* Define UTHOST if the utmp file has a host field.
446
* Define if you have the utempter utmp helper program
451
* If ttyslot() breaks getlogin() by returning indexes to utmp entries
452
* of type DEAD_PROCESS, then our getlogin() replacement should be
453
* selected by defining BUGGYGETLOGIN.
458
* If your system has the calls setreuid() and setregid(),
459
* define HAVE_SETREUID. Otherwise screen will use a forked process to
460
* safely create output files without retaining any special privileges.
462
#undef HAVE_SETRESUID
466
* If your system supports BSD4.4's seteuid() and setegid(), define
472
* If you want the "time" command to display the current load average
473
* define LOADAV. Maybe you must install screen with the needed
474
* privileges to read /dev/kmem.
475
* Note that NLIST_ stuff is only checked, when getloadavg() is not available.
482
#undef LOADAV_GETLOADAVG
484
#undef LOADAV_AVENRUN
485
#undef LOADAV_USE_NLIST64
487
#undef NLIST_DECLARED
489
#undef NLIST_NAME_UNION
492
* If your system has the new format /etc/ttys (like 4.3 BSD) and the
493
* getttyent(3) library functions, define GETTTYENT.
498
* Define USEBCOPY if the bcopy/memcpy from your system's C library
499
* supports the overlapping of source and destination blocks. When
500
* undefined, screen uses its own (probably slower) version of bcopy().
502
* SYSV machines may have a working memcpy() -- Oh, this is
503
* quite unlikely. Tell me if you see one.
504
* "But then, memmove() should work, if at all available" he thought...
505
* Boing, never say "works everywhere" unless you checked SCO UNIX.
506
* Their memove fails the test in the configure script. Sigh. (Juergen)
513
* If your system has vsprintf() and requires the use of the macros in
514
* "varargs.h" to use functions with variable arguments,
520
* If your system has strerror() define this.
525
* If the select return value doesn't treat a descriptor that is
526
* usable for reading and writing as two hits, define SELECT_BROKEN.
531
* Define this if your system supports named pipes.
536
* Define this if your system exits select() immediatly if a pipe is
537
* opened read-only and no writer has opened it.
542
* Define this if the unix-domain socket implementation doesn't
543
* create a socket in the filesystem.
545
#undef SOCK_NOT_IN_FS
548
* If your system has setenv() and unsetenv() define USESETENV
553
* If your system does not come with a setenv()/putenv()/getenv()
554
* functions, you may bring in our own code by defining NEEDPUTENV.
559
* If the passwords are stored in a shadow file and you want the
560
* builtin lock to work properly, define SHADOWPW.
565
* If you are on a SYS V machine that restricts filename length to 14
566
* characters, you may need to enforce that by setting NAME_MAX to 14
568
#undef NAME_MAX /* KEEP_UNDEF_HERE override system value */
572
* define HAVE_RENAME if your system has a rename() function
577
* define HAVE__EXIT if your system has the _exit() call.
582
* define HAVE_LSTAT if your system has symlinks and the lstat() call.
587
* define HAVE_UTIMES if your system has the utimes() call.
592
* define HAVE_FCHOWN if your system has the fchown() call.
597
* define HAVE_FCHMOD if your system has the fchmod() call.
602
* define HAVE_VSNPRINTF if your system has vsnprintf() (GNU lib).
604
#undef HAVE_VSNPRINTF
607
* define HAVE_GETCWD if your system has the getcwd() call.
612
* define HAVE_SETLOCALE if your system has the setlocale() call.
614
#undef HAVE_SETLOCALE
617
* define HAVE_STRFTIME if your system has the strftime() call.
622
* define HAVE_NL_LANGINFO if your system has the nl_langinfo() call
623
* and <langinfo.h> defines CODESET.
625
#undef HAVE_NL_LANGINFO
628
* Newer versions of Solaris include fdwalk, which can greatly improve
629
* the startup time of screen; otherwise screen spends a lot of time
630
* closing file descriptors.
635
* define HAVE_DEV_PTC if you have a /dev/ptc character special
641
* define HAVE_SVR4_PTYS if you have a /dev/ptmx character special
642
* device and support the ptsname(), grantpt(), unlockpt() functions.
644
#undef HAVE_SVR4_PTYS
647
* define HAVE_GETPT if you have the getpt() function.
652
* define HAVE_OPENPTY if your system has the openpty() call.
657
* define PTYRANGE0 and or PTYRANGE1 if you want to adapt screen
658
* to unusual environments. E.g. For SunOs the defaults are "qpr" and
659
* "0123456789abcdef". For SunOs 4.1.2
660
* #define PTYRANGE0 "pqrstuvwxyzPQRST"
661
* is recommended by Dan Jacobson.
667
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
671
/* Define to 1 if you have the `fchmod' function. */
674
/* Define to 1 if you have the `fchown' function. */
677
/* Define to 1 if you have the `getcwd' function. */
680
/* Define to 1 if you have the `getpt' function. */
683
/* Define to 1 if you have the <inttypes.h> header file. */
684
#undef HAVE_INTTYPES_H
686
/* Define to 1 if you have the `lstat' function. */
689
/* Define to 1 if you have the <memory.h> header file. */
692
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
695
/* Define to 1 if you have the `openpty' function. */
698
/* Define to 1 if you have the `rename' function. */
701
/* Define to 1 if you have the `setlocale' function. */
702
#undef HAVE_SETLOCALE
704
/* Define to 1 if you have the <stdint.h> header file. */
707
/* Define to 1 if you have the <stdlib.h> header file. */
710
/* Define to 1 if you have the `strerror' function. */
713
/* Define to 1 if you have the `strftime' function. */
716
/* Define to 1 if you have the <strings.h> header file. */
717
#undef HAVE_STRINGS_H
719
/* Define to 1 if you have the <string.h> header file. */
722
/* Define to 1 if you have the <stropts.h> header file. */
723
#undef HAVE_STROPTS_H
725
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
727
#undef HAVE_SYS_DIR_H
729
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
731
#undef HAVE_SYS_NDIR_H
733
/* Define to 1 if you have the <sys/stat.h> header file. */
734
#undef HAVE_SYS_STAT_H
736
/* Define to 1 if you have the <sys/types.h> header file. */
737
#undef HAVE_SYS_TYPES_H
739
/* Define to 1 if you have the <unistd.h> header file. */
742
/* Define to 1 if you have the `utimes' function. */
745
/* Define to 1 if you have the `vsnprintf' function. */
746
#undef HAVE_VSNPRINTF
748
/* Define to 1 if you have the `_exit' function. */
751
/* Define to the address where bug reports for this package should be sent. */
752
#undef PACKAGE_BUGREPORT
754
/* Define to the full name of this package. */
757
/* Define to the full name and version of this package. */
758
#undef PACKAGE_STRING
760
/* Define to the one symbol short name of this package. */
761
#undef PACKAGE_TARNAME
763
/* Define to the home page for this package. */
766
/* Define to the version of this package. */
767
#undef PACKAGE_VERSION
769
/* Define to 1 if you have the ANSI C header files. */