1
/* Copyright (c) 1993-2002
2
* Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
3
* Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
4
* Copyright (c) 1987 Oliver Laumann
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2, or (at your option)
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program (see the file COPYING); if not, write to the
18
* Free Software Foundation, Inc.,
19
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
21
****************************************************************
22
* $Id: patchlevel.h,v 1.17 1994/05/31 12:32:35 mlschroe Exp $ FAU
25
/****************************************************************
27
* patchlevel.h: Our life story.
29
* 08.07.91 -- 3.00.01 -wipe and a 'setenv TERM dumb' bugfix.
30
* 17.07.91 -- 3.00.02 another patchlevel by Wayne Davison
31
* 31.07.91 -- 3.00.03 E0, S0, C0 for flexible semi-graphics, nonblocking
32
* window title input and 'C-a :' command input.
33
* 10.08.91 -- 3.00.04 scrollback, markkeys and some bugfixes.
34
* 13.08.91 -- 3.00.05 mark routine improved, ansi prototypes added.
35
* 20.08.91 -- 3.00.06 screen -h, faster GotoPos in overlay, termcap %.
37
* 28.08.91 -- 3.00.07 environment variable support. security. terminfo.
38
* pyramid and ultrix support.
39
* 07.09.91 -- 3.00.99 secopen(), MIPS support, SVR4 support.
40
* 09.09.91 -- 3.01.00 backspace bug fixed.
41
* 03.10.91 -- 3.01.01 ansi.c: null-ptr fixed, CLS now saves to scrollback.
42
* Using setresuid on hpux. Memory leak fixed.
43
* Better GotoPos(). Support for IC. Another resize bug.
44
* Detach() w/o fore crashed. -T and -A(dapt) option.
46
* 19.12.91 -- 3.01.02 flow now really automatic (autoflow killed).
47
* 7 bit restriction removed from WriteString().
48
* 09.01.92 -- 3.01.03 flow reattach bug fixed. VDISCARD bug fixed.
49
* 13.01.92 -- 3.01.04 new flow concept: ^Af toggles now three states
50
* 21.01.92 -- 3.01.05 '^A:screen 11' bug fixed. aflag in DoScreen().
51
* Some code cleanup. attach_tty and display_tty[]
53
* 26.01.92 -- 3.01.06 apollo support, "hardcopy_append on", "bufferfile",
54
* SECURITY PROBLEM cleared..
55
* 28.01.92 -- 3.01.07 screen after su allowed. Pid became part of
56
* SockName. sysvish 14 character restriction considered.
57
* 31.01.92 -- 3.02.00 Ultrix port, Irix 3.3 SGI port, shadow pw support,
58
* data loss on stdin overflow fixed. "refresh off".
59
* 12.02.92 -- 3.02.02 stripdev() moved, -S introduced, bufferfile improved,
60
* ShellProg coredump cleared. SVR4 bugfixes.
61
* I/O code speedup added.
62
* 24.04.92 -- 3.02.03 perfectly stackable overlays. One scrollback per window,
64
* 05.05.92 -- 3.02.04 very nasty initialisation bug fixed.
65
* 09.05.92 -- 3.02.05 parsing for $:cl: termcap strings and \012 octal notation
66
* in screenrc file. More structuring. Detached startup
67
* with 'screen -d -m -S...' bugfixed.
68
* 11.05.92 -- 3.02.06 setreuid() bugs cleared, C-a : setenv added.
69
* "xn" capability in TERMCAP needed since "am" is there.
70
* 25.06.92 -- 3.02.07 The multi display test version. Have merci.
71
* 15.07.92 -- 3.02.08 :B8: supports automatic charset switching for 8-bit
72
* 26.09.92 -- 3.02.09 Ported to linux. Ignoring bad files in $SCREENDIR
73
* 22.10.92 -- 3.02.10 screen.c/ansi.c splitted in several pieces.
74
* Better ISearch. Cleanup of loadav.c
75
* 29.10.92 -- 3.02.11 Key mechanism rewritten. New command names.
76
* New iscreenrc syntax.
77
* 02.11.92 -- 3.02.12 'bind g copy_reg' and 'bind x ins_reg' as suggested by
78
* stillson@tsfsrv.mitre.org (Ken Stillson).
79
* 03.11.92 -- 3.02.13 Ported to SunOs 4.1.2. Gulp. Some NULL ptrs fixed and
80
* misc. braindamage fixed.
81
* 03.11.92 -- 3.02.14 Argument number checking, AKA fixed.
82
* 05.11.92 -- 3.02.15 Memory leaks in Detach() and KillWindow() fixed.
83
* Lockprg powerdetaches on SIGHUP.
84
* 12.11.92 -- 3.02.16 Introduced two new termcaps: "CS" and "CE".
85
* (Switch cursorkeys in application mode)
86
* Tim's async output patch.
87
* Fixed an ugly bug in WriteString().
88
* New command: 'process'
89
* 16.11.92 -- 3.02.17 Nuking unsent tty output is now optional, (toxic
91
* 30.11.92 -- 3.02.18 Lots of multi display bugs fixed. New layer
92
* function 'Restore'. MULTIUSER code cleanup.
93
* Rudimental acls added for multiuser.
94
* No more error output, when output gives write errors.
95
* 02.12.92 -- 3.02.19 BROKEN_PIPE and SOCK_NOT_IN_FS defines added for
96
* braindead systems. Bug in recover socket code fixed.
97
* Can create windows again from shell.
98
* 22.12.92 -- 3.02.20 Made a superb configure script. STY and break fixed.
99
* 01.02.93 -- 3.02.21 Coredump bug fixed: 8-bit output in background windows.
100
* Console grabbing somewhat more useable.
101
* 23.02.93 -- 3.02.22 Added ^:exec command, but not tested at all.
102
* 23.02.93 -- 3.02.23 Added 'hardcopydir' and 'logdir' commands.
103
* 11.03.93 -- 3.02.24 Prefixed display and window structure elements.
104
* Screen now handles autowrapped lines correctly
105
* in the redisplay and mark function.
106
* 19.03.93 -- 3.03.00 Patched for BSD386. pseudos work.
107
* 31.03.93 -- 3.03.01 Don't allocate so much empty attr and font lines.
108
* 04.04.93 -- 3.03.02 fixed :exec !..| less and :|less, patched BELL_DONE &
109
* ^B/^F. Fixed auto_nuke attribute resetting. Better linux
110
* configure. ^AW shows '&' when window has other attacher.
111
* MAXWIN > 10 patch. KEEP_UNDEF in config.h.in, shellaka
112
* bug fixed. dec alpha port. Solaris port.
113
* 02.05.93 -- 3.03.03 Configure tweaked for sgi. Update environment with
114
* setenv command. Silence on|off, silencewait <sec>,
115
* defautonuke commands added. Manual page updated.
116
* 13.05.93 -- 3.03.04 exit in newsyntax script, finished _CX_UX port.
117
* Texinfo page added by Jason Merrill. Much longish debug
118
* output removed. Select window by title (or number).
119
* 16.06.93 -- 3.04.00 Replaced ^A- by ^A^H to be complementary to ^A SPACE.
120
* Moved into CVS. Yacc.
121
* 28.06.93 -- 3.04.01 Fixed selecting windows with numeric title. Silence
122
* now works without nethackoption set.
123
* 01.07.93 -- 3.04.02 Implementing real acls.
124
* 22.07.93 -- 3.05.00 Fixed SVR4, some multiuser bugs, -- DISTRIBUTED
125
* 05.08.93 -- 3.05.01 ${srcdir} feature added. Shellprog bug fixed.
126
* Motorola reattach bug fixed. Writelock bug fixed.
127
* Copybuffer moved into struct acluser. Configure.in
128
* uglified for Autoconf1.5. Paste may now have an
129
* argument. Interactive setenv. Right margin bug
130
* fixed. IRIX 5 patches. -- DISTRIBUTED
131
* 13.08.93 -- 3.05.02 ultrix support added. expand_vars removed from
132
* register function. Paste bug fixed.
133
* sysmacros.h now included in pty.c on sgis
134
* Strange hpux hack added for TTYCMP.
135
* Zombie feature improved.
136
* 08.09.93 -- 3.05.03 Makefile and OSF1 fine tuning. Eased attach to
137
* multi sessions. Writelock now obeys acl write
138
* permissions. UserDel() now preserves defaults.
139
* acladd/aclchg syntax improved. Updated
140
* documentation. Bug in at command fixed.
141
* MakeWindow() now obeys perm defaults.
142
* 03.10.93 -- 3.05.90 Multiple displays can now share the same window.
143
* Layers now belong to Windows. "Select -" yields a blank
144
* page. Debug output can be switched on/off at runtime.
145
* Number command changes window number and utmp-slot.
146
* 14.10.93 -- 3.05.91 Mechanism to find the "best" window added. Much
147
* debugging done and still needed. Slowpaste setting now
148
* per window. Preserving fore AND other window when
149
* detached. Per user settings for `monitor' and `silence'.
150
* New command `su'. BlankWindow performs now ColonInput.
151
* History command fixed, it depended on paste code that
152
* was previously changed to allow concatenation of buffers.
153
* Fixing umask problem with WriteFile() reported by Jamie
155
* 30.11.93 -- 3.05.04 Kanji support added. New keymap feature:
156
* bindkey and various map commands. GR and C1
157
* flags now define the character processing.
158
* 30.11.93 -- 3.05.92 Kanji support added. New keymap feature:
159
* bindkey and various map commands. GR and C1
160
* flags now define the character processing.
161
* 17.12.93 -- 3.05.93 Tcon authentification mechanism. AddChar macro broken up
162
* into 2 functions. Acl.c, network.c, misc.c, termcap.c
163
* and tty.c are now display free!
164
* 27.12.93 -- 3.05.94 Telnet login works, can export one window per mux.
165
* Acl-groups added. Export rights is an acl.
166
* connect works, can create shadow window thus import
167
* command channel and switch windows. Can detach sessions
168
* from each other. Can renumber imported and exported
169
* windows. DL_LOOP prevents now SEGV, sessions have names
170
* and can be connected to very flexible.
171
* 03.01.94 -- 3.05.95 Import and export of any number of channels works,
172
* except a small bug with margin handling when exporting.
173
* Window titles are forwarded, break is forwarded and
174
* tcon learned the mux protocoll. A few more bugs in
175
* network.c fixed. Tcon has Mux arrays, Protocoll is '\0'
177
* 08.01.94 -- 3.05.96 More tcon work. Solaris debugging.
179
* 14.01.94 -- 3.05.05 New FindSocket() code. Nicer socket handling.
180
* 20.01.94 -- 3.05.06 New attribute handling code. NeXT fixes.
181
* 04.02.94 -- 3.05.07 Ugly bug in ScrollH fixed. Keymap defaults.
182
* 10.03.94 -- 3.05.97 'defsilence' by Lloyd Zusman. Zombie resurrekt key.
183
* -b, -p options. Fixed Compilekeys(), gulp. config.h
184
* allows choice of VMIN/VTIME/NDELAY for ttys.
185
* 13.04.94 -- 3.05.08 Kanji bug fixed. POSIX sigaction support.
186
* os.h cleanup. UTNOKEEP splitted into
187
* UT_CLOSE and UT_UNSORTED. linux no longer
188
* implies UT_CLOSE. "struct display" name
189
* convention change: _d_ to d_ and d_ to D_.
190
* 20.04.94 -- 3.05.09 configure.in ptyrange bug fixed. Upgraded
192
* 27.04.94 -- 3.05.10 97801 obscure code support. Linux long
193
* password workaround.
194
* 09.05.94 -- 3.05.11 seteuid() support added. Security fixes.
195
* _IBMR2 kludge makes call to sleep obsolete.
196
* Small fixes in uname() code. djm suggests replace of
198
* 27.07.94 -- 3.05.12 seteuid attacher bug fixed. ks/ke changed
199
* in termcap/info and termcap.c
200
* 01.09.94 -- 3.05.58 (There are a few more patches to come, subtracted 40)
201
* breaktype command to select how we cause breaks.
202
* Testing logfile.c. Manual and texinfo documentation
203
* updated to explain all new commands except keymapping.
204
* Added modem lines to info of plain ttys. Using
205
* cfset{i,o}speed() for POSIX is better, much better.
206
* 07.09.94 -- 3.05.59 Flushing logfiles every 5 seconds. Testing new
207
* resize linewrap code. Resize with care.
208
* Resurrect now displays its command string.
209
* 11.09.94 -- 3.05.60 Lines are now correctly wrapped, when window size
210
* changes; this prevents loss of text.
211
* 15.09.94 -- 3.05.61 umask renamed to aclumask, bell renamed to bell_msg.
212
* *_msg commands show message when called w/o parameter.
213
* Many changes in the manual, thanks to Sven Guckes.
215
* 27.09.94 -- 3.05.13 defwlock stupidity fixed. MakeTermcap ks/ke
216
* ':' removed. Termcap entry improved.
217
* copy_reg and ins_reg obsoleted by better paste command:
219
* copy_reg r => paste . r
220
* ins_reg r => paste r
222
* 18.10.94 -- 3.05.62 breaktype changed. -L option added to enable logging
223
* from both command line and screenrc. SIGXFSZ ignored.
224
* 28.11.94 -- 3.05.63 ACL's sharpened. No user has any rights, unless
225
* explicitly given. Only two exceptions: 1) "acladd user"
226
* without further parameters. 2) Evry user has a default
227
* umask that gives himself all permissions on the windows
228
* he creates. Bug with colon input on shared windows fixed.
229
* The commad is now executed by the user typing the final
230
* Enter-Key rather by a random user.
231
* 30.11.94 -- 3.05.64 On demand grabbing of pending auto writelocks.
232
* Solaris troubles us with kill(pid, 0) ... not fixed...
233
* defbreaktype added. (breaktype is also global, still...)
234
* SIGARGHACK cleared, to pamper poor little Ultrix4.4 cfe.
236
* w_status changed to w_hstatus, it's a #define in
237
* Domain/OS reported by ejackson@iastate.edu.
238
* 05.12.94 -- 3.05.17 SVR4 pty bug fixed, don't update window status
239
* line if not changed, onyx support. Manual
241
* 14.12.94 -- 3.05.18 w_status changed to w_hstatus, it's a #define in
242
* Domain/OS reported by ejackson@iastate.edu.
243
* Screen manpage patches by larry.
244
* Ugly seteuid bug in ForkWindow() fixed.
245
* 20.12.94 -- 3.06.00 Solaris has broken seteuid().
246
* osf loadav patches. -- DISTRIBUTED
247
* 08.01.95 -- 3.05.65 Bug with LOGOUTOK and -ln fixed. redundant secfopen()
248
* avoided, when logfflush() looks at delayed nfs updates.
249
* Option parser now allowes condensed options. -A fixed.
250
* New commands 'preselect' and 'defpreselect'. New option
251
* -WdmS starts a detached screen session with watchdog.
252
* 16.01.95 -- 3.06.01 KANJI patch. doc/Makefile.in fixed.
253
* Install now calls doc/Makefile install.
254
* Don't use 'ds' too often, breaks MSkermit.
255
* undef'd LOGOUTOK logs in now.
256
* Ultrix is broken, too (seteuid).
257
* Use \r (not \n) to join lines in pastebuf.
258
* bindkey can now remove sequences.
259
* InitTTY fixed for PLAIN. -- DISTRIBUTED
260
* 06.02.95 -- 3.05.66 DisplayLine() does now clipping to reduce coredump-
261
* frequency. Window size is adapted to the display that
262
* types input, to reduce multi-user confusion. Scrollback
263
* mode still may get the wrong size.
264
* 07.02.95 -- 3.05.67 WinRewrite() also needs to clip. Users without unix
265
* account, but with screen password allowed. Chacl
266
* allows password change, su prompts for user name too.
267
* 01.03.95 -- 3.05.68 Leaving a window may now cause a resize to match a
268
* remaining display. Simple ESC-CR fix in the vt100
270
* 26.03.95 -- 3.05.69 Markroutine() needs to resize the window to avoid
271
* coredumps, just like WinProcess() already does.
272
* More NEED_ flags added in comm.c to avoid coredumps.
273
* 04.04.95 -- 3.06.02 Simple ESC-CR fix in the vt100 state machine.
274
* Now compiles again with all extras disabled.
275
* Zombie resurrect added. defc1, defgr, defkanji
276
* added. Screen now replies to a secondary DA
277
* query. Some missing NEED_XXX added in comm.c.
278
* Better default tty permissions/group test.
279
* More AUX support, now compiles with POSIX.
280
* Function keycodes xtermified (F11, F12).
281
* Paste bug fixed (only worked with KANJI).
282
* Check bcopy before memcpy/memmove.
283
* FindSocket code much fixed & improved.
284
* 10.04.95 -- 3.05.70 Display_displays() now shows the users permissions on
285
* the currently displayed window, this is easier than a
286
* full featured lsacl, but also helps. chacl can now copy
287
* users, but we need to copy windows.
288
* 26.04.95 -- 3.05.71 Multi digit screen numbers in utmp. MakeWindow() now
289
* echoes what it does, just like RemakeWindow() when
290
* 'verbose on' (default off).
291
* `screen -ls myname/' will find own(!) non-multi sessions.
292
* Command line option -q improved and documented.
293
* 'debug off' also shuts attacher debugging off now.
294
* 03.05.95 -- 3.05.72 'connect' command bugfixed. colon prompt improved.
295
* open(O_NONBLOCK) does not work on 4.1.3, using O_NDELAY.
296
* There are writes to exp_wid2chan[-1], XXX I just added
297
* fillers to the mux structure, please debug this ASAP!
298
* WindowByName() prefers exact matches now. Esc forwarding
299
* from Frontend to Backend suppressed unless specified.
300
* 26.06.95 -- 3.05.73 Improving the combination of dflag and rflag: If both
301
* are set, a screen session is reattached, regardless
302
* if it was previously detached or attached elseewhere.
303
* "screen -D -RR" is thus most powerful: Give me my screen
304
* session here and now. No matter, if this means creating
305
* a new session (due to the second R without warning
306
* message), detching the session first (and due to the
307
* capitalised D logging out), or simply attaching to it.
308
* 13.07.95 -- 3.05.74 Markroutine learned new join mode: comma seperated.
309
* Can disable the detach feature from config.h.
310
* Configure.in now calls etc/toolcheck. Password is no
311
* longer a static array.
312
* 30.07.95 -- 3.05.75 Karl Heuer wants to install with a relative symlink.
313
* Command line option -k removed (try -t).
314
* 31.08.95 -- 3.06.03 Color support, digraph command, code
315
* cleanup (struct mchar/mline added).
316
* 03.09.95 -- 3.06.04 SetRendition display check. Solaris unblock
317
* SIGHUP. w_curchar->w_rend, lintified.
318
* Shadow-password code moved and rewritten
320
* 06.09.95 -- 3.05.76 Added support for braille displays (by Hadi Bargi Rangin
321
* and Bill Barry, {bargy,barryb}@dots.physics.orst.edu
322
* Added baud, cs8, istrip, ixon, ixoff options for plain
323
* tty windows. Untested.
324
* 09.09.95 -- 3.07.99 Merged 3.7.76 back into the main distribution but
325
* without network, blankwindow and dlist support.
326
* Global variable Password removed.
327
* Resize code completely rewritten.
328
* New commands: sorendition, (def)charset.
329
* strftime-like message generation.
330
* 26.09.95 -- 3.06.05 resize code completely rewritten.
331
* Very visible cursor added. vbell sequence
332
* \Eb added. _delay for terminfo libs added
333
* to make the padding work for the first time.
334
* New ProcessInput() makes "command command"
335
* work. '[def]escape ""' clears escape chars.
336
* Changed logdir command to logfile. It now uses
337
* MakeWinMsg() to create the filename.
338
* Updated the manuals.
339
* 03.10.95 -- 3.08.00 Merged 3.07.99 back into my 3.06.05.
340
* pause removed. NONROOT now in config.h.
341
* sysV68 configure test. Socket protocol got
342
* revision number. New command termcapinfo.
343
* Screenrcs, docs & configure.in updated
344
* 18.10.95 -- 3.08.01 Info shows parser state.
345
* Very visible cursor added. vbell sequence
346
* \Eb added. _delay for terminfo libs added
347
* to make the padding work for the first time.
348
* Braille code almost completely reworked.
349
* New ProcessInput() makes "command command"
350
* work. '[def]escape ""' clears escape chars.
351
* Command logdir -> logfile and uses MakeWinMsg.
352
* Updated the manuals. New mark command 'x'.
353
* stuff has new "-k" parameter.
354
* 28.10.95 -- 3.06.06 Added new 'XC' capability to provide
355
* a method for character translation.
356
* 17.11.95 -- 3.07.00 Added CheckEscape() function.
357
* acl -> acls because of hpux10 nameclash
358
* /stand/vmunix added to kernel list (hpux10)
359
* stripdev changed to translate
360
* /dev/pts<n> to /dev/pts/<n> (unixware)
361
* -lgen added to GETUTENT configure test.
362
* 20.11.95 -- 3.07.01 corrected vbell null ptr reference.
364
* 27.11.95 -- 3.08.02 Added CheckEscape() function.
365
* acl -> acls because of hpux10 nameclash
366
* /stand/vmunix added to kernel list (hpux10)
367
* stripdev changed to translate
368
* /dev/pts<n> to /dev/pts/<n> (unixware)
369
* -lgen added to GETUTENT configure test.
370
* corrected vbell null ptr reference
371
* -- 3.08.03 etc/toolcheck is now shouting louder.
372
* Solaris 2.5 has /kernel/genunix.
373
* Touching socket when detach/attach.
374
* FindWindow corrected. AIX4 patch
375
* from robert@mayday.cix.co.uk.
376
* 1.09.96 -- 3.07.02 added #ifdef MAPKEYS for CheckEscape.
377
* etc/toolcheck is now shouting louder.
378
* Touching socket when detach/attach.
379
* Linux tcflush hack. Linux md5 password suport.
380
* USE_SGR support for dumb (wyse) terminals.
381
* "at" and "reset" commands improved.
382
* Now sensitive to broken AIX4 TIOCPKT.
383
* tek patch unapplied.
384
* linux utmp patch: set slot to DEAD_PROCESS.
385
* include signal.h for killpg if hpux10.10.
386
* linux: elf, but no SVR4, check for utmpx.
387
* hpux10.10 libcurses breaks select()!
389
* 27.09.96 -- 3.07.03 ncurses tgetflag returns -1 if cap not valid.
390
* autonuke fix: reset application mode. An init
391
* string may have cleared it.
392
* Small UTMPOK patch from Douglas B. Jones.
393
* 23.06.97 -- 3.07.04 Some bugfixes. Kanji fixed.
394
* Code update from 3.8.6: Colon line editing added.
395
* Digraph made line-editing resistant.
396
* DEC ALPHA ut_user[0] = 0;
397
* Added error messages to exit_with_usage.
398
* FindSocket code improved (the MULTIUSER part).
399
* Use utimes() if available. Power-detached start.
400
* vsnprintf() support. exit -> _exit in window.c.
401
* AddXChars now tolerates NULL string.
403
* 10.11.98 -- 3.07.05 Wayne's resize.c patch to keep the cursor
404
* onscreen. FindWindow corrected. AIX4 patch
405
* from robert@mayday.cix.co.uk.
406
* Fixed kanji am & markcursor bugs.
407
* SCO support (Gert Doering).
408
* Wayne's statusline extra space. New flag nospc
409
* for MakeWinMsg. New TF capability: add missing
410
* termcap/info caps. screen-exchange security
411
* fix. Use kstat for Solaris' loadavg.
412
* Check for mode 775 if screen runs setgid.
413
* Fixed typo in silence command.
414
* Allow detach with no tty. HPUX10.20 ltchars
415
* hack. Use @1/@7 as replacement for kh/kH.
416
* Use seteuid before calling tgetent.
417
* Check for displays in Msg().
418
* Linux ncurses hack: redefine _nc_timed_wait.
419
* Configure check for ncurses (sigh).
420
* ITOH Yasufumi: kanji fixes, osf support,
421
* bug fixes. More secure Rewrite().
422
* Increased line buffer size to 2048 bytes.
423
* SCO-5 Fixes (Brian L. Gentry).
424
* 25.11.98 -- 3.07.06 resize code now handles tabs correctly.
426
* -- 3.09.00 loads'o'bugs fixed, 3.8 merged with 3.7.
427
* new region clip code.
428
* Many new features (see NEWS file).
429
* 3.08.99 -- 3.09.02 -- DISTRIBUTED
430
* 11.08.99 -- 3.09.04 small utmp fix, BSD chflags fix, tty mode fix
432
* 1.09.99 -- 3.09.05 linux SVR4_PTYS fixes, better ShowWindos(),
433
* Panic() displays bug fixed, strerror fixed,
434
* missing $srcdir & bad prefix in Makefiles.
435
* console grabbing with SRIOCSREDIR.
436
* linux utmp workaround added. Some KANJI bugs
437
* fixed. Stupid StuffKey() bug fixed.
439
* 24.07.00 -- 3.09.06 kanji fixes. lock escape char fix.
440
* removed delayed message hack.
441
* resize command & focus subcomands by joze.
442
* fix for solaris' utmp_helper bug.
443
* linux tty handling fix.
444
* mousetracking, rxvt osc sequences.
445
* background color erase support.
446
* don't log user in after hangup.
447
* hstatus escape update bug fixed.
448
* 1.09.00 -- 3.09.08 -- DISTRIBUTED
449
* 25.05.01 -- 3.09.09 use $DESTDIR in Makefiles.
450
* renamed struct user to acluser to fix hpux
451
* problem for good. utf8 support. 16 color
452
* support. New -X option and escape sequence
453
* to send screen commands.
454
* New commands: attrcolor, defutf8, dinfo, utf8.
455
* Extended commands: width, height, readbuf,
456
* writebuf. Better nlist64 detection.
457
* New config.h option SOCKDIR_IS_LOCAL_TO_HOST.
458
* Don't call tputs with an empty string.
459
* New string escape %{ for attr/color changes.
460
* LRefreshAll bug fixed (0 instead of -1 as bce).
461
* New quote handling in Parse(). Workaround for
462
* some bad termcap/info entries added. Set BE
463
* for all xtermish emulators. Added '0x' and
464
* 'U+' prefix in digraph command. LOADAV_TYPE
467
* 4.09.01 -- 3.09.10 '-R' security fix. Fixed array in MScrollV().
469
* Reset charset after 'me'.
470
* 14.02.02 -- 3.09.11 Support for other encodings. Double width
471
* utf-8 chars. 'L' modifier for %D, %M, %w
472
* and %W. New %= (hfill), %H (hostname),
473
* %f (flags), %F (focus) escapes. New commands
474
* source, windowlist, deflog. Command key classes.
475
* New login state: always. Time format
476
* changeable. 256 color support.
477
* Updated digraph table. Ignorecase.
478
* Windowlist resizeable on blank window.
479
* Added encoding to paste buffers.
480
* Hpux loadtype detection fixed.
481
* Disabled im/ic warning. Fixed a bug that
482
* could cause window lockups in rare
483
* circumstances. Made hangup signal to the
484
* backend process detach all displays.
485
* New escapes %< %>, + and - flag for %w.
486
* Added eval command, added -h option to detach.
487
* Also set flayer when processing -X commands.
488
* use getpt() on linux systems. doc patches from
489
* Adam Lazur. tty flow/intr cleanup.
491
* 29.08.2002 3.09.12 Port to POSIX 1003.1-2001 hosts (Paul Eggert).
492
* Fixed encoding for reattach password test.
493
* Fixed NUL characters when encodings are active.
494
* Fixed silly encodings bugs. Fixed bogus
495
* oldflayer when a window gets freed.
496
* Altscreen support by Gurusamy Sarathy.
497
* Reuse old password in builtin_screenlock.
499
* 05.09.2002 3.09.13 added missing break statement that broke
502
* 13.03.2003 3.09.15 Console workaround for linux. Scrolling-region
503
* reset fix. GBK encoding added.
504
* support for unicode combining characters added.
505
* openpty() support added (thomas@xs4all.nl).
506
* preselect of blank window ('-') or window
507
* list ('=') added. Added %` string escape
508
* and backtick command.
510
* 08.09.2003 4.00.00 rewrote nonblock command, added defnonblock.
511
* added zmodem support (catch & passthrough).
512
* added screenblanker.
513
* fixed a couple of GBK bugs.
514
* rewrote command parsing.
515
* added -m option to windowlist (Felix Rosencrantz)
517
* 18.09.2003 4.00.01 fixed two small bugs in the new parser.
519
* 05.12.2003 4.00.02 fixed a bug in the ansi parser. fixed execs
520
* on ttys. fixed hardstatus line on blanked screen.
528
#define DATE "5-Dec-03"