diff options
author | Michael Jennings <mej@kainx.org> | 2006-08-18 17:41:19 +0000 |
---|---|---|
committer | Michael Jennings <mej@kainx.org> | 2006-08-18 17:41:19 +0000 |
commit | edf3577888445d6928fb2063bfbaa28f477dcb05 (patch) | |
tree | b7a0af31eeafa70f3a06f131ba78b3b7ef2c48eb /src | |
parent | ddd76116088589d3b8b1580bddb768b5eea1f374 (diff) | |
download | eterm-edf3577888445d6928fb2063bfbaa28f477dcb05.tar.gz |
Fri Aug 18 13:41:14 2006 Michael Jennings (mej)
Addressed licensing concerns.
----------------------------------------------------------------------
SVN revision: 24877
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 16 | ||||
-rw-r--r-- | src/command.c | 51 | ||||
-rw-r--r-- | src/command.h | 3 | ||||
-rw-r--r-- | src/feature.h | 3 | ||||
-rw-r--r-- | src/netdisp.c | 127 | ||||
-rw-r--r-- | src/options.c | 5 | ||||
-rw-r--r-- | src/startup.c | 22 |
7 files changed, 31 insertions, 196 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 6f4bb7b..caaf5e9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -9,14 +9,14 @@ MMX_OBJS = mmx_cmod.lo SSE2_SRCS = sse2_cmod.c SSE2_OBJS = sse2_cmod.lo -libEterm_la_SOURCES = actions.c actions.h buttons.c buttons.h command.c \ - command.h draw.c draw.h e.c e.h eterm_debug.h eterm_utmp.h \ - events.c events.h feature.h font.c font.h grkelot.c \ - grkelot.h icon.h menus.c menus.h misc.c misc.h netdisp.c \ - options.c options.h pixmap.c pixmap.h profile.h screen.c \ - screen.h script.c script.h scrollbar.c scrollbar.h \ - startup.c startup.h system.c system.h term.c term.h \ - timer.c timer.h utmp.c windows.c windows.h defaultfont.c \ +libEterm_la_SOURCES = actions.c actions.h buttons.c buttons.h command.c \ + command.h draw.c draw.h e.c e.h eterm_debug.h eterm_utmp.h \ + events.c events.h feature.h font.c font.h grkelot.c \ + grkelot.h icon.h menus.c menus.h misc.c misc.h \ + options.c options.h pixmap.c pixmap.h profile.h screen.c \ + screen.h script.c script.h scrollbar.c scrollbar.h \ + startup.c startup.h system.c system.h term.c term.h \ + timer.c timer.h utmp.c windows.c windows.h defaultfont.c \ defaultfont.h libscream.c scream.h screamcfg.h EXTRA_libEterm_la_SOURCES = $(MMX_SRCS) $(SSE2_SRCS) diff --git a/src/command.c b/src/command.c index c1f2fbd..e9ca487 100644 --- a/src/command.c +++ b/src/command.c @@ -1,38 +1,25 @@ -/*--------------------------------*-C-*---------------------------------* - * File: command.c - */ -/* notes: */ -/*----------------------------------------------------------------------* - * Copyright 1992 John Bovey, University of Kent at Canterbury. - * - * You can do what you like with this source code as long as - * you don't try to make money out of it and you include an - * unaltered copy of this message (including the copyright). - * - * This module has been very heavily modified by R. Nation - * <nation@rocket.sanders.lockheed.com> - * No additional restrictions are applied - * - * Additional modification by Garrett D'Amore <garrett@netcom.com> to - * allow vt100 printing. No additional restrictions are applied. - * - * Integrated modifications by Steven Hirsch <hirsch@emba.uvm.edu> to - * properly support X11 mouse report mode and support for DEC - * "private mode" save/restore functions. - * - * Integrated key-related changes by Jakub Jelinek <jj@gnu.ai.mit.edu> - * to handle Shift+function keys properly. - * Should be used with enclosed termcap / terminfo database. +/* + * Copyright (C) 1997-2006, Michael Jennings * - * Extensive modifications by mj olesen <olesen@me.QueensU.CA> - * No additional restrictions. + * 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: * - * Further modification and cleanups for Solaris 2.x and Linux 1.2.x - * by Raul Garcia Garcia <rgg@tid.es>. No additional restrictions. + * 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. * - * As usual, the author accepts no responsibility for anything, nor does - * he guarantee anything whatsoever. - *----------------------------------------------------------------------*/ + * 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$"; diff --git a/src/command.h b/src/command.h index bf03998..64439c9 100644 --- a/src/command.h +++ b/src/command.h @@ -386,9 +386,6 @@ extern void tt_printf(const unsigned char *, ...); extern void main_loop(void); extern int v_doPending(void); extern void v_writeBig(int, char *, int); -#ifdef DISPLAY_IS_IP -extern char *network_display(const char *); -#endif _XFUNCPROTOEND diff --git a/src/feature.h b/src/feature.h index 8690b15..c0d9ffd 100644 --- a/src/feature.h +++ b/src/feature.h @@ -206,9 +206,6 @@ /********************* Miscellaneous options *********************/ -/* To have $DISPLAY and the "\E[7n" response be IP addresses rather than FQDN's */ -/* #define DISPLAY_IS_IP */ - /* To have "\E[7n" reply with the display name. This is a potential security risk, * so its use is discouraged and unsupported. */ /* #define ENABLE_DISPLAY_ANSWER */ diff --git a/src/netdisp.c b/src/netdisp.c deleted file mode 100644 index f3ee7fa..0000000 --- a/src/netdisp.c +++ /dev/null @@ -1,127 +0,0 @@ -/*----------------------------------------------------------------------* - * support for resolving the actual IP number of the host for remote - * DISPLAYs. When the display is local (i.e. :0), we add support for - * sending the first non-loopback interface IP number as the DISPLAY - * instead of just sending the incorrect ":0". This way telnet/rlogin - * shells can actually get the correct information into DISPLAY for - * xclients. - * - * Copyright 1996 Chuck Blake <cblake@BBN.COM> - * -+ * Cleaned up somewhat by mj olesen <olesen@me.queensu.ca> -+ * - * You can do what you like with this source code as long as you don't try - * to make money out of it and you include an unaltered copy of this - * message (including the copyright). - * - * As usual, the author accepts no responsibility for anything, nor does - * he guarantee anything whatsoever. - *----------------------------------------------------------------------*/ - -static const char cvs_ident[] = "$Id$"; - -#include "config.h" -#include "feature.h" - -#ifdef DISPLAY_IS_IP - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <ctype.h> -#include <errno.h> -#ifdef HAVE_FCNTL_H -# include <fcntl.h> -#endif -#ifdef HAVE_UNISTD_H -# include <unistd.h> -#endif -#include <sys/types.h> -#include <sys/socket.h> -#ifdef HAVE_SYS_SOCKIO_H -# include <sys/sockio.h> -#endif -#ifdef HAVE_SYS_BYTEORDER_H -# include <sys/byteorder.h> -#endif -#ifdef TIME_WITH_SYS_TIME -# include <sys/time.h> -# include <time.h> -#else -# ifdef HAVE_SYS_TIME_H -# include <sys/time.h> -# else -# include <time.h> -# endif -#endif -#ifdef HAVE_SYS_IOCTL_H -# include <sys/ioctl.h> -#endif -#include <netinet/in.h> -#include <arpa/inet.h> -#include <net/if.h> -#include <net/if_arp.h> - -#include "startup.h" - -/* return a pointer to a static buffer */ -char * -network_display(const char *display) -{ - - static char ipaddress[32] = ""; - char buffer[1024], *rval = NULL; - struct ifconf ifc; - struct ifreq *ifr; - int i, skfd; - - if (display[0] != ':' && strncmp(display, "unix:", 5)) - return display; /* nothing to do */ - - ifc.ifc_len = sizeof(buffer); /* Get names of all ifaces */ - ifc.ifc_buf = buffer; - - if ((skfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { - perror("socket"); - return NULL; - } - if (ioctl(skfd, SIOCGIFCONF, &ifc) < 0) { - perror("SIOCGIFCONF"); - close(skfd); - return NULL; - } - for (i = 0, ifr = ifc.ifc_req; i < (ifc.ifc_len / sizeof(struct ifreq)); i++, ifr++) { - - struct ifreq ifr2; - - snprintf(ifr2.ifr_name, sizeof(ifr2.ifr_name), ifr->ifr_name); - if (ioctl(skfd, SIOCGIFADDR, &ifr2) >= 0) { - unsigned long addr; - struct sockaddr_in *p_addr; - - p_addr = (struct sockaddr_in *) &(ifr2.ifr_addr); - addr = htonl((unsigned long) p_addr->sin_addr.s_addr); - - /* - * not "0.0.0.0" or "127.0.0.1" - so format the address - */ - if (addr && addr != 0x7F000001) { - char *colon = strchr(display, ':'); - - if (colon == NULL) - colon = ":0.0"; - - sprintf(ipaddress, "%d.%d.%d.%d%s", (int) ((addr >> 030) & 0xFF), (int) ((addr >> 020) & 0xFF), - (int) ((addr >> 010) & 0xFF), (int) (addr & 0xFF), colon); - - rval = ipaddress; - break; - } - } - } - - close(skfd); - return rval; -} -#endif /* DISPLAY_IS_IP */ -/*----------------------- end-of-file (C source) -----------------------*/ diff --git a/src/options.c b/src/options.c index 95ce5ca..8f44852 100644 --- a/src/options.c +++ b/src/options.c @@ -662,11 +662,6 @@ version(void) #else printf(" -MULTI_CHARSET"); #endif -#ifdef DISPLAY_IS_IP - printf(" +DISPLAY_IS_IP"); -#else - printf(" -DISPLAY_IS_IP"); -#endif #ifdef ENABLE_DISPLAY_ANSWER printf(" +ENABLE_DISPLAY_ANSWER"); #else diff --git a/src/startup.c b/src/startup.c index 4f5ed4a..145050c 100644 --- a/src/startup.c +++ b/src/startup.c @@ -261,24 +261,10 @@ eterm_bootstrap(int argc, char *argv[]) } #endif -#ifdef DISPLAY_IS_IP - /* Fixup display_name for export over pty to any interested terminal - * clients via "ESC[7n" (e.g. shells). Note we use the pure IP number - * (for the first non-loopback interface) that we get from - * network_display(). This is more "name-resolution-portable", if you - * will, and probably allows for faster x-client startup if your name - * server is beyond a slow link or overloaded at client startup. Of - * course that only helps the shell's child processes, not us. - * - * Giving out the display_name also affords a potential security hole - */ - - val = display_name = network_display(display_name); - if (val == NULL) -#endif /* DISPLAY_IS_IP */ - val = XDisplayString(Xdisplay); - if (display_name == NULL) - display_name = val; /* use broken `:0' value */ + val = XDisplayString(Xdisplay); + if (display_name == NULL) { + display_name = val; + } i = strlen(val); display_string = MALLOC(i + 9); |