Wed Mar 8 19:35:36 PST 2000 Michael Jennings <mej@eterm.org>
Added a new --pipe-name option to allow Eterm to read from a console device/tty/pipe other than /dev/console. This is useful for folks on Debian, where "console" messages actually go to the /dev/xconsole named pipe rather than to /dev/tty0. SVN revision: 2212
This commit is contained in:
parent
6c0c02f897
commit
c9a97e46be
|
@ -3331,3 +3331,11 @@ Mon Mar 6 21:11:13 PST 2000 Michael Jennings <mej@eterm.org>
|
|||
desktop pixmap to save memory.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Wed Mar 8 19:35:36 PST 2000 Michael Jennings <mej@eterm.org>
|
||||
|
||||
Added a new --pipe-name option to allow Eterm to read from a console
|
||||
device/tty/pipe other than /dev/console. This is useful for folks on
|
||||
Debian, where "console" messages actually go to the /dev/xconsole
|
||||
named pipe rather than to /dev/tty0.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
|
|
@ -139,6 +139,7 @@ int my_ruid, my_euid, my_rgid, my_egid;
|
|||
char initial_dir[PATH_MAX + 1];
|
||||
static char *ptydev = NULL, *ttydev = NULL; /* pty/tty name */
|
||||
int cmd_fd = -1; /* file descriptor connected to the command */
|
||||
int pipe_fd = -1;
|
||||
pid_t cmd_pid = -1; /* process id if child */
|
||||
int Xfd = -1; /* file descriptor of X server connection */
|
||||
unsigned int num_fds = 0; /* number of file descriptors being used */
|
||||
|
@ -2447,6 +2448,9 @@ cmd_getc(void)
|
|||
FD_ZERO(&readfds);
|
||||
FD_SET(cmd_fd, &readfds);
|
||||
FD_SET(Xfd, &readfds);
|
||||
if (pipe_fd >= 0) {
|
||||
FD_SET(pipe_fd, &readfds);
|
||||
}
|
||||
value.tv_usec = TIMEOUT_USEC;
|
||||
value.tv_sec = 0;
|
||||
|
||||
|
@ -2463,16 +2467,11 @@ cmd_getc(void)
|
|||
|
||||
/* See if we can read from the application */
|
||||
if (FD_ISSET(cmd_fd, &readfds)) {
|
||||
|
||||
/* unsigned int count = BUFSIZ; */
|
||||
register unsigned int count = CMD_BUF_SIZE;
|
||||
|
||||
cmdbuf_ptr = cmdbuf_endp = cmdbuf_base;
|
||||
|
||||
/* while (count > sizeof(cmdbuf_base) / 2) */
|
||||
while (count) {
|
||||
|
||||
/* int n = read(cmd_fd, cmdbuf_endp, count); */
|
||||
register int n = read(cmd_fd, cmdbuf_endp, count);
|
||||
|
||||
if (n <= 0)
|
||||
|
@ -2484,6 +2483,24 @@ cmd_getc(void)
|
|||
if (CHARS_BUFFERED()) {
|
||||
RETURN_CHAR();
|
||||
}
|
||||
} else if (pipe_fd >= 0 && FD_ISSET(pipe_fd, &readfds)) {
|
||||
register unsigned int count = CMD_BUF_SIZE / 2;
|
||||
|
||||
cmdbuf_ptr = cmdbuf_endp = cmdbuf_base;
|
||||
while (count) {
|
||||
|
||||
register int n = read(pipe_fd, cmdbuf_endp, count);
|
||||
|
||||
if (n <= 0)
|
||||
break;
|
||||
n = add_carriage_returns(cmdbuf_endp, n);
|
||||
cmdbuf_endp += n;
|
||||
count -= n;
|
||||
}
|
||||
/* some characters read in */
|
||||
if (CHARS_BUFFERED()) {
|
||||
RETURN_CHAR();
|
||||
}
|
||||
}
|
||||
if (retval == 0) {
|
||||
refresh_count = 0;
|
||||
|
|
|
@ -321,6 +321,7 @@ typedef struct { /* sgtty interface */
|
|||
|
||||
/************ Variables ************/
|
||||
extern int my_ruid, my_rgid, my_euid, my_egid;
|
||||
extern int pipe_fd;
|
||||
extern char initial_dir[PATH_MAX+1];
|
||||
extern unsigned long PrivateModes;
|
||||
extern Atom wmDeleteWindow;
|
||||
|
|
|
@ -1,26 +1,24 @@
|
|||
/* eterm_utmp.h -- Eterm utmp module header file
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef ETERM_UTMP_H_
|
||||
|
|
|
@ -1,29 +1,24 @@
|
|||
/* feature.h -- Eterm feature defines header
|
||||
* -- 10 Sept 1997, mej
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* $Id$
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _FEATURE_H_
|
||||
|
|
38
src/font.c
38
src/font.c
|
@ -1,26 +1,24 @@
|
|||
/* font.c -- Eterm font module
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
38
src/font.h
38
src/font.h
|
@ -1,26 +1,24 @@
|
|||
/* font.h -- Eterm font module header file
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _FONT_H_
|
||||
|
|
39
src/main.c
39
src/main.c
|
@ -1,27 +1,24 @@
|
|||
/* main.c -- Eterm main() function
|
||||
* -- 22 August 1998, mej
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
87
src/misc.c
87
src/misc.c
|
@ -1,26 +1,24 @@
|
|||
/* misc.c -- Eterm toolkit routines
|
||||
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
@ -291,3 +289,52 @@ find_file(const char *file, const char *ext)
|
|||
|
||||
}
|
||||
|
||||
char *
|
||||
safe_print_string(char *str, unsigned long len)
|
||||
{
|
||||
static char *ret_buff = NULL;
|
||||
static unsigned long rb_size = 0;
|
||||
char *p;
|
||||
unsigned long n = 0, i;
|
||||
|
||||
if (ret_buff == NULL) {
|
||||
ret_buff = (char *) MALLOC(len + 1);
|
||||
rb_size = len;
|
||||
}
|
||||
for (i = 0, p = ret_buff; i < len; i++, str++, n++) {
|
||||
if (n + 2 >= rb_size) {
|
||||
rb_size *= 2;
|
||||
ret_buff = (char *) REALLOC(ret_buff, rb_size + 1);
|
||||
}
|
||||
if (*str < ' ') {
|
||||
*p++ = '^';
|
||||
*p++ = *str + '@';
|
||||
n++;
|
||||
} else {
|
||||
*p++ = *str;
|
||||
}
|
||||
}
|
||||
*p = 0;
|
||||
return ret_buff;
|
||||
}
|
||||
|
||||
unsigned long
|
||||
add_carriage_returns(unsigned char *buff, unsigned long cnt)
|
||||
{
|
||||
register unsigned char *out, *outp, *in;
|
||||
register unsigned long i;
|
||||
|
||||
D_CMD(("buff == %8p \"%s\", cnt == %lu\n", buff, safe_print_string(buff, cnt), cnt));
|
||||
outp = out = (unsigned char *) MALLOC(cnt * 2);
|
||||
for (i = 0, in = buff; i < cnt; i++) {
|
||||
if (*in == '\n') {
|
||||
*out++ = '\r';
|
||||
}
|
||||
*out++ = *in++;
|
||||
}
|
||||
i = (unsigned long) (out - outp);
|
||||
memcpy(buff, outp, i);
|
||||
FREE(outp);
|
||||
D_CMD(("buff == %8p \"%s\", i == %lu\n", buff, safe_print_string(buff, i), i));
|
||||
return i;
|
||||
}
|
||||
|
|
|
@ -42,6 +42,7 @@ extern char *str_trim(char *str);
|
|||
extern int parse_escaped_string(char *str);
|
||||
extern const char *search_path(const char *pathlist, const char *file, const char *ext);
|
||||
extern const char *find_file(const char *file, const char *ext);
|
||||
extern unsigned long add_carriage_returns(unsigned char *buff, unsigned long cnt);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
|
|
|
@ -90,6 +90,7 @@ static ctx_state_t *ctx_state;
|
|||
static eterm_func_t *builtins;
|
||||
static unsigned char ctx_cnt, ctx_idx, ctx_state_idx, ctx_state_cnt, fstate_cnt, builtin_cnt, builtin_idx;
|
||||
static conf_var_t *conf_vars = NULL;
|
||||
static char *rs_pipe_name = NULL;
|
||||
#if defined (HOTKEY_CTRL) || defined (HOTKEY_META)
|
||||
static char *rs_bigfont_key = NULL;
|
||||
static char *rs_smallfont_key = NULL;
|
||||
|
@ -342,6 +343,7 @@ static const struct {
|
|||
OPT_LONG("cut-chars", "seperators for double-click selection", &rs_cutchars),
|
||||
#endif /* CUTCHAR_OPTION */
|
||||
OPT_LONG("term-name", "value to use for setting $TERM", &rs_term_name),
|
||||
OPT_LONG("pipe-name", "filename of console pipe to emulate -C", &rs_pipe_name),
|
||||
OPT_BOOL('C', "console", "grab console messages", &Options, Opt_console),
|
||||
OPT_ARGS('e', "exec", "execute a command rather than a shell", &rs_execArgs)
|
||||
};
|
||||
|
@ -3920,6 +3922,22 @@ post_parse(void)
|
|||
}
|
||||
#endif
|
||||
|
||||
if (rs_pipe_name) {
|
||||
struct stat fst;
|
||||
|
||||
if (lstat(rs_pipe_name, &fst) != 0) {
|
||||
print_error("Unable to stat console pipe \"%s\" -- %s", rs_pipe_name, strerror(errno));
|
||||
} else {
|
||||
if (S_ISREG(fst.st_mode) || S_ISDIR(fst.st_mode)) {
|
||||
print_error("Directories and regular files are not valid console pipes. Sorry.");
|
||||
} else {
|
||||
pipe_fd = open(rs_pipe_name, O_RDONLY | O_NDELAY | O_NOCTTY);
|
||||
if (pipe_fd < 0) {
|
||||
print_error("Unable to open console pipe -- %s", strerror(errno));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
unsigned char
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _SCROLLBAR_H
|
||||
#define _SCROLLBAR_H
|
||||
|
||||
|
|
|
@ -1,27 +1,24 @@
|
|||
/* startup.c -- Eterm startup code
|
||||
* -- 7 October 1999, mej
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
|
@ -1,26 +1,24 @@
|
|||
/* startup.h -- Eterm main program header file
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _STARTUP_H
|
||||
|
|
38
src/term.c
38
src/term.c
|
@ -1,26 +1,24 @@
|
|||
/* term.c -- Eterm terminal emulation module
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
38
src/term.h
38
src/term.h
|
@ -1,26 +1,24 @@
|
|||
/* term.h -- Eterm terminal emulation module header file
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _TERM_H_
|
||||
|
|
36
src/utmp.c
36
src/utmp.c
|
@ -1,24 +1,24 @@
|
|||
/* utmp.c -- Eterm utmp support
|
||||
|
||||
* This program is distributed under the GNU Public License (GPL) as
|
||||
* outlined in the COPYING file.
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
|
@ -1,26 +1,24 @@
|
|||
/* windows.c -- Eterm window handling module
|
||||
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
static const char cvs_ident[] = "$Id$";
|
||||
|
|
|
@ -1,27 +1,24 @@
|
|||
/* windows.h -- Eterm window handling module header file
|
||||
* -- 29 April 1999, mej
|
||||
/*
|
||||
* Copyright (C) 1997-2000, Michael Jennings
|
||||
*
|
||||
* This file is original work by Michael Jennings <mej@eterm.org> and
|
||||
* Tuomo Venalainen <vendu@cc.hut.fi>. This file, and any other file
|
||||
* bearing this same message or a similar one, is distributed under
|
||||
* the GNU Public License (GPL) as outlined in the COPYING file.
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to
|
||||
* deal in the Software without restriction, including without limitation the
|
||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* Copyright (C) 1997-2000, Michael Jennings and Tuomo Venalainen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies of the Software, its documentation and marketing & publicity
|
||||
* materials, and acknowledgment shall be given in the documentation, materials
|
||||
* and software packages that this Software was used.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _WINDOWS_H_
|
||||
|
|
Loading…
Reference in New Issue