linux-decnet-commit Mailing List for DECnet for Linux (Page 21)
Brought to you by:
chrissie_c,
ph3-der-loewe
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(15) |
Nov
(16) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(20) |
Feb
(27) |
Mar
(25) |
Apr
(12) |
May
(2) |
Jun
(6) |
Jul
(36) |
Aug
(12) |
Sep
(12) |
Oct
(16) |
Nov
(5) |
Dec
(5) |
2003 |
Jan
(8) |
Feb
(9) |
Mar
(25) |
Apr
(18) |
May
(29) |
Jun
(4) |
Jul
(1) |
Aug
|
Sep
(10) |
Oct
(5) |
Nov
(3) |
Dec
(9) |
2004 |
Jan
(17) |
Feb
|
Mar
(9) |
Apr
|
May
(4) |
Jun
(1) |
Jul
(2) |
Aug
(21) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2005 |
Jan
(5) |
Feb
|
Mar
(13) |
Apr
|
May
(3) |
Jun
(1) |
Jul
|
Aug
|
Sep
(13) |
Oct
(83) |
Nov
(2) |
Dec
|
2006 |
Jan
(21) |
Feb
(1) |
Mar
(32) |
Apr
(31) |
May
(3) |
Jun
(1) |
Jul
|
Aug
(7) |
Sep
|
Oct
(1) |
Nov
(3) |
Dec
(13) |
2007 |
Jan
(1) |
Feb
(7) |
Mar
|
Apr
(2) |
May
|
Jun
(1) |
Jul
(2) |
Aug
(20) |
Sep
|
Oct
|
Nov
|
Dec
(7) |
2008 |
Jan
(4) |
Feb
(13) |
Mar
(24) |
Apr
(18) |
May
(10) |
Jun
|
Jul
|
Aug
(40) |
Sep
(72) |
Oct
(61) |
Nov
(9) |
Dec
(2) |
2009 |
Jan
(6) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(7) |
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
|
Dec
(3) |
2010 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
|
Jun
|
Jul
(41) |
Aug
(28) |
Sep
(2) |
Oct
(5) |
Nov
(4) |
Dec
|
2011 |
Jan
(7) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Patrick C. <pa...@us...> - 2006-03-06 17:00:59
|
Update of /cvsroot/linux-decnet/latd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv552 Modified Files: services.h Log Message: Get rid of stupid typo that prevents compilation with gcc 4.1 Index: services.h =================================================================== RCS file: /cvsroot/linux-decnet/latd/services.h,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** services.h 4 Jan 2004 15:49:04 -0000 1.10 --- services.h 6 Mar 2006 17:00:50 -0000 1.11 *************** *** 76,80 **** bool is_available(); bool remove_node(const std::string &node); ! void serviceinfo::list_service(std::ostrstream &output); void expire_nodes(time_t); void list_nodes(std::ostrstream &output); --- 76,80 ---- bool is_available(); bool remove_node(const std::string &node); ! void list_service(std::ostrstream &output); void expire_nodes(time_t); void list_nodes(std::ostrstream &output); |
From: Patrick C. <pa...@us...> - 2006-02-02 10:52:49
|
Update of /cvsroot/linux-decnet/dnprogs/libdap In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13800 Modified Files: connection.cc Log Message: Don't SIGBUS on sparc when sending data packets >256 bytes long Index: connection.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdap/connection.cc,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** connection.cc 28 Oct 2005 08:09:49 -0000 1.7 --- connection.cc 2 Feb 2006 10:52:41 -0000 1.8 *************** *** 52,56 **** #define min(a,b) (a)<(b)?(a):(b) ! // Construct an un-connected object dap_connection::dap_connection(int verbosity) { --- 52,56 ---- #define min(a,b) (a)<(b)?(a):(b) ! // Construct an un-connected object dap_connection::dap_connection(int verbosity) { *************** *** 112,116 **** if (outbufptr && blocked) set_blocked(false); if (sockfd) ::close(sockfd); ! delete[] buf; delete[] outbuf; --- 112,116 ---- if (outbufptr && blocked) set_blocked(false); if (sockfd) ::close(sockfd); ! delete[] buf; delete[] outbuf; *************** *** 122,126 **** void dap_connection::create_socket() { ! if ((sockfd=socket(AF_DECnet,SOCK_SEQPACKET,DNPROTO_NSP)) == -1) { sprintf(errstring, "socket failed: %s", strerror(errno)); --- 122,126 ---- void dap_connection::create_socket() { ! if ((sockfd=socket(AF_DECnet,SOCK_SEQPACKET,DNPROTO_NSP)) == -1) { sprintf(errstring, "socket failed: %s", strerror(errno)); *************** *** 131,143 **** // Connect to a named object ! bool dap_connection::connect(char *node, char *user, char *password, char *object) { struct sockaddr_dn sockaddr; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = 0x00; ! if (strlen(object) > 16) { --- 131,143 ---- // Connect to a named object ! bool dap_connection::connect(char *node, char *user, char *password, char *object) { struct sockaddr_dn sockaddr; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = 0x00; ! if (strlen(object) > 16) { *************** *** 153,166 **** // Connect to an object number ! bool dap_connection::connect(char *node, char *user, char *password, int object) { struct sockaddr_dn sockaddr; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = object; sockaddr.sdn_objnamel = 0x00; ! return do_connect(node, user, password, sockaddr); } --- 153,166 ---- // Connect to an object number ! bool dap_connection::connect(char *node, char *user, char *password, int object) { struct sockaddr_dn sockaddr; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = object; sockaddr.sdn_objnamel = 0x00; ! return do_connect(node, user, password, sockaddr); } *************** *** 176,187 **** if (!parse(fspec, accessdata, node, tailspec)) return false; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = object; sockaddr.sdn_objnamel = 0x00; ! ! return do_connect(node, ! (char *)accessdata.acc_user, (char *)accessdata.acc_pass, sockaddr); } --- 176,187 ---- if (!parse(fspec, accessdata, node, tailspec)) return false; ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = object; sockaddr.sdn_objnamel = 0x00; ! ! return do_connect(node, ! (char *)accessdata.acc_user, (char *)accessdata.acc_pass, sockaddr); } *************** *** 196,205 **** if (!parse(fspec, accessdata, node, tailspec)) return false; ! ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = 0x00; ! if (strlen(object) > 16) { --- 196,205 ---- if (!parse(fspec, accessdata, node, tailspec)) return false; ! ! sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; sockaddr.sdn_objnum = 0x00; ! if (strlen(object) > 16) { *************** *** 210,216 **** memcpy(sockaddr.sdn_objname, object, strlen(object)); sockaddr.sdn_objnamel = dn_htons(strlen(object)); ! ! return do_connect(node, ! (char *)accessdata.acc_user, (char *)accessdata.acc_pass, sockaddr); } --- 210,216 ---- memcpy(sockaddr.sdn_objname, object, strlen(object)); sockaddr.sdn_objnamel = dn_htons(strlen(object)); ! ! return do_connect(node, ! (char *)accessdata.acc_user, (char *)accessdata.acc_pass, sockaddr); } *************** *** 219,224 **** // Private connect method ! bool dap_connection::do_connect(const char *node, const char *user, ! const char *password, struct sockaddr_dn &sockaddr) { --- 219,224 ---- // Private connect method ! bool dap_connection::do_connect(const char *node, const char *user, ! const char *password, struct sockaddr_dn &sockaddr) { *************** *** 234,238 **** } ! /* If the password is "-" and fd 0 is a tty then prompt for a password */ if (password[0] == '-' && password[1] == '\0' && isatty(0)) --- 234,238 ---- } ! /* If the password is "-" and fd 0 is a tty then prompt for a password */ if (password[0] == '-' && password[1] == '\0' && isatty(0)) *************** *** 245,249 **** return false; } ! } --- 245,249 ---- return false; } ! } *************** *** 270,276 **** accessdata.acc_userl = strlen(user); accessdata.acc_passl = strlen(password); ! if (setsockopt(sockfd, DNPROTO_NSP, SO_CONACCESS, &accessdata, ! sizeof(accessdata)) < 0) { sprintf(errstring, "setsockopt failed: %s", strerror(errno)); --- 270,276 ---- accessdata.acc_userl = strlen(user); accessdata.acc_passl = strlen(password); ! if (setsockopt(sockfd, DNPROTO_NSP, SO_CONACCESS, &accessdata, ! sizeof(accessdata)) < 0) { sprintf(errstring, "setsockopt failed: %s", strerror(errno)); *************** *** 278,284 **** return false; } ! if (::connect(sockfd, (struct sockaddr *)&s, ! sizeof(sockaddr)) < 0) { if (errno == ECONNREFUSED) --- 278,284 ---- return false; } ! if (::connect(sockfd, (struct sockaddr *)&s, ! sizeof(sockaddr)) < 0) { if (errno == ECONNREFUSED) *************** *** 293,297 **** return false; } ! // Make sure we get a blocking socket to start with int flags = fcntl(sockfd, F_GETFL, 0); --- 293,297 ---- return false; } ! // Make sure we get a blocking socket to start with int flags = fcntl(sockfd, F_GETFL, 0); *************** *** 328,332 **** if (buflen < 0 && saved_errno == EAGAIN) return false; // No data ! if (buflen < 0) { if (saved_errno == ENOTCONN) --- 328,332 ---- if (buflen < 0 && saved_errno == EAGAIN) return false; // No data ! if (buflen < 0) { if (saved_errno == ENOTCONN) *************** *** 341,345 **** return false; } ! if (buflen == 0) { lasterror = "Remote end closed connection"; --- 341,345 ---- return false; } ! if (buflen == 0) { lasterror = "Remote end closed connection"; *************** *** 367,375 **** if (outbuf[last_msg_start+1] & 0x02) ! { // Add in length if (outbuf[last_msg_start+1] & 0x04) // LEN256 header { ! *(unsigned short *)&outbuf[last_msg_start+2] = dn_htons(outbufptr - last_msg_start - 4); } else --- 367,376 ---- if (outbuf[last_msg_start+1] & 0x02) ! { // Add in length if (outbuf[last_msg_start+1] & 0x04) // LEN256 header { ! unsigned short len = dn_htons(outbufptr - last_msg_start - 4); ! memcpy(&outbuf[last_msg_start+2], &len, sizeof(unsigned short)); } else *************** *** 391,400 **** if (blocked && (outbufptr >= blocksize)) { ! if (verbose > 2) DAPLOG((LOG_INFO, "block is over-full(%d), Sending %d bytes\n", outbufptr, last_msg_start)); er=::write(sockfd,outbuf,last_msg_start); ! if (er < 0) { if (errno == ENOTCONN) --- 392,401 ---- if (blocked && (outbufptr >= blocksize)) { ! if (verbose > 2) DAPLOG((LOG_INFO, "block is over-full(%d), Sending %d bytes\n", outbufptr, last_msg_start)); er=::write(sockfd,outbuf,last_msg_start); ! if (er < 0) { if (errno == ENOTCONN) *************** *** 411,415 **** last_msg_start = outbufptr; ! if (verbose > 2) DAPLOG((LOG_INFO, "Wrote %d bytes, buffer size is now %d bytes\n", er, outbufptr)); --- 412,416 ---- last_msg_start = outbufptr; ! if (verbose > 2) DAPLOG((LOG_INFO, "Wrote %d bytes, buffer size is now %d bytes\n", er, outbufptr)); *************** *** 419,423 **** // Normal send for unblocked output. er=::write(sockfd,outbuf,outbufptr); ! if (er < 0) { if (errno == ENOTCONN) --- 420,424 ---- // Normal send for unblocked output. er=::write(sockfd,outbuf,outbufptr); ! if (er < 0) { if (errno == ENOTCONN) *************** *** 451,455 **** ptr = &buf[bufptr]; ! bufptr += num; --- 452,456 ---- ptr = &buf[bufptr]; ! bufptr += num; *************** *** 457,461 **** } ! // Returns a pointer to a specific number of bytes in the buffer // if there are that many. // Return NULL if there are not enough available. --- 458,462 ---- } ! // Returns a pointer to a specific number of bytes in the buffer // if there are that many. // Return NULL if there are not enough available. *************** *** 498,502 **** if (buflen < bufptr+needed) { ! // The required buffer size int reqd_length = needed; int left = buflen - bufptr; /* what's left unread */ --- 499,503 ---- if (buflen < bufptr+needed) { ! // The required buffer size int reqd_length = needed; int left = buflen - bufptr; /* what's left unread */ *************** *** 508,512 **** while (buflen < reqd_length) { ! if (verbose > 2) DAPLOG((LOG_DEBUG, "check_length(): reading up to %d bytes to fill record. bufptr=%d, buflen=%d\n", reqd_length - buflen, bufptr, buflen)); --- 509,513 ---- while (buflen < reqd_length) { ! if (verbose > 2) DAPLOG((LOG_DEBUG, "check_length(): reading up to %d bytes to fill record. bufptr=%d, buflen=%d\n", reqd_length - buflen, bufptr, buflen)); *************** *** 514,518 **** /* read enough to satisfy what's needed */ int readlen = ::dnet_recv(sockfd, buf+buflen, reqd_length-buflen, MSG_EOR); ! if (readlen < 0) { sprintf(errstring, "read failed: %s", strerror(errno)); --- 515,519 ---- /* read enough to satisfy what's needed */ int readlen = ::dnet_recv(sockfd, buf+buflen, reqd_length-buflen, MSG_EOR); ! if (readlen < 0) { sprintf(errstring, "read failed: %s", strerror(errno)); *************** *** 545,549 **** } ! // // Wait for an incoming connection // Returns a constructed new dap_connection object --- 546,550 ---- } ! // // Wait for an incoming connection // Returns a constructed new dap_connection object *************** *** 596,600 **** bind_sockaddr.sdn_objnamel = 0x00; ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) --- 597,601 ---- bind_sockaddr.sdn_objnamel = 0x00; ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) *************** *** 626,630 **** bind_sockaddr.sdn_objnamel = dn_htons(strlen(object)); ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) --- 627,631 ---- bind_sockaddr.sdn_objnamel = dn_htons(strlen(object)); ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) *************** *** 650,654 **** bind_sockaddr.sdn_objnamel = 0; ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) --- 651,655 ---- bind_sockaddr.sdn_objnamel = 0; ! int status = ::bind(sockfd, (struct sockaddr *)&bind_sockaddr, sizeof(bind_sockaddr)); if (status) *************** *** 706,715 **** if (outbufptr == 0) return true; // Nothing to send; ! if (verbose > 2) DAPLOG((LOG_INFO, "Blocked output is OFF, sending %d bytes\n", outbufptr)); // Send what we have saved up. int er=::write(sockfd,outbuf,outbufptr); ! if (er < 0) { if (errno == ENOTCONN) --- 707,716 ---- if (outbufptr == 0) return true; // Nothing to send; ! if (verbose > 2) DAPLOG((LOG_INFO, "Blocked output is OFF, sending %d bytes\n", outbufptr)); // Send what we have saved up. int er=::write(sockfd,outbuf,outbufptr); ! if (er < 0) { if (errno == ENOTCONN) *************** *** 731,735 **** // Output is a completed accessdata structure // and filespec ! bool dap_connection::parse(const char *fname, struct accessdata_dn &accessdata, char *node, char *filespec) --- 732,736 ---- // Output is a completed accessdata structure // and filespec ! bool dap_connection::parse(const char *fname, struct accessdata_dn &accessdata, char *node, char *filespec) *************** *** 742,746 **** memset(&accessdata, 0, sizeof(struct accessdata_dn)); ! state = NODE; /* Node is mandatory */ --- 743,747 ---- memset(&accessdata, 0, sizeof(struct accessdata_dn)); ! state = NODE; /* Node is mandatory */ *************** *** 752,756 **** if (fname[n0] != ':' && fname[n0] != '\"' && fname[n0] != '\'') { ! if (n1 >= MAX_NODE || fname[n0] == ' ' || fname[n0] == '\n') { --- 753,757 ---- if (fname[n0] != ':' && fname[n0] != '\"' && fname[n0] != '\'') { ! if (n1 >= MAX_NODE || fname[n0] == ' ' || fname[n0] == '\n') { *************** *** 920,924 **** if (!newcm->write(*this)) return false; delete newcm; ! // Read the other end's config message dap_message *m=dap_message::read_message(*this, true); --- 921,925 ---- if (!newcm->write(*this)) return false; delete newcm; ! // Read the other end's config message dap_message *m=dap_message::read_message(*this, true); |
From: Patrick C. <pa...@us...> - 2006-01-26 16:29:24
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5953/debian Modified Files: changelog Log Message: 2.33 changelog & version update Index: changelog =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/changelog,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -r1.35 -r1.36 *** changelog 30 Oct 2005 15:21:50 -0000 1.35 --- changelog 26 Jan 2006 16:29:13 -0000 1.36 *************** *** 1,2 **** --- 1,16 ---- + dnprogs (2.33) unstable; urgency=low + + * Fix dncopy fetching from RSX (don't set RRL unless the user asks for it) + * Get rid of spurious protection error from dncopy + * dnlogin sets local username so (eg) VMSs SHOW TERM displays it + * Numerous fixes dnlogin so it now works to RSX + * Several fixes to fal so it works with RSX + * dnlogin now disconnects correctly when it gets a unbind + * ctermd: Fix "-bash: no job control in this shell" message on some platforms + * dndir displays more consistently (and once!) when a remote file is locked + * phone_ncurses now resizes the display if its xterm is resized + + -- Patrick Caulfield <pa...@de...> Thu, 26 Jan 2006 16:19:42 +0000 + dnprogs (2.32) unstable; urgency=low |
From: Patrick C. <pa...@us...> - 2006-01-26 16:29:24
|
Update of /cvsroot/linux-decnet/dnprogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5953 Modified Files: Makefile.common Log Message: 2.33 changelog & version update Index: Makefile.common =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/Makefile.common,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -r1.32 -r1.33 *** Makefile.common 27 Oct 2005 12:31:26 -0000 1.32 --- Makefile.common 26 Jan 2006 16:29:12 -0000 1.33 *************** *** 58,62 **** MAJOR_VERSION=2 ! MINOR_VERSION=32 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) --- 58,62 ---- MAJOR_VERSION=2 ! MINOR_VERSION=33 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) |
From: Patrick C. <pa...@us...> - 2006-01-26 14:55:11
|
Update of /cvsroot/linux-decnet/dnprogs/phone In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6503 Modified Files: phone_ncurses.c Log Message: Redraw the screen if the window is resized. Index: phone_ncurses.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/phone/phone_ncurses.c,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** phone_ncurses.c 23 Feb 2001 15:01:47 -0000 1.5 --- phone_ncurses.c 26 Jan 2006 14:55:01 -0000 1.6 *************** *** 7,10 **** --- 7,12 ---- #include <sys/types.h> #include <sys/time.h> + #include <sys/signal.h> + #include <sys/ioctl.h> #include <ctype.h> #include <string.h> *************** *** 41,45 **** static void display_line(char *text); static void rearrange_windows(int num); ! static int Finished = FALSE; static int Switch_Hook_Char = '%'; --- 43,49 ---- static void display_line(char *text); static void rearrange_windows(int num); ! ! static void draw_title(WINDOW *window); ! static int Finished = FALSE; static int Switch_Hook_Char = '%'; *************** *** 51,54 **** --- 55,59 ---- static WINDOW *display_window = NULL; static PANEL *display_panel = NULL; + static int sigwinch_happened = 0; /* Cursor position in command mode */ *************** *** 75,79 **** { int key; ! key = getch(); if (key == ERR) return 0; --- 80,84 ---- { int key; ! key = getch(); if (key == ERR) return 0; *************** *** 81,85 **** // If we are dialling then any key will cancel. cancel_dial(); ! // Display window is open - close it. if (display_window) --- 86,90 ---- // If we are dialling then any key will cancel. cancel_dial(); ! // Display window is open - close it. if (display_window) *************** *** 92,96 **** display_window = NULL; } ! // Deal with global key assignments first if (key == 4) // Ctrl-D --- 97,101 ---- display_window = NULL; } ! // Deal with global key assignments first if (key == 4) // Ctrl-D *************** *** 99,103 **** return 0 ; } ! if (key == 23) // Ctrl-W refreshes the screen { --- 104,108 ---- return 0 ; } ! if (key == 23) // Ctrl-W refreshes the screen { *************** *** 105,109 **** return 0; } ! if (key == 26) // Ctrl-Z is hangup { --- 110,114 ---- return 0; } ! if (key == 26) // Ctrl-Z is hangup { *************** *** 111,115 **** return 0; } ! // Switch-hook char - change mode to command if (state == STATE_TALK && key == Switch_Hook_Char) --- 116,120 ---- return 0; } ! // Switch-hook char - change mode to command if (state == STATE_TALK && key == Switch_Hook_Char) *************** *** 118,122 **** cmd_x=1; cmd_y=1; ! // Clear the last command wmove(Main_Window, cmd_y, cmd_x); --- 123,127 ---- cmd_x=1; cmd_y=1; ! // Clear the last command wmove(Main_Window, cmd_y, cmd_x); *************** *** 137,141 **** if (isprint(key)) wechochar(userinfo[0].window, key); ! // CR may need to scroll the window. if (key == '\r') --- 142,146 ---- if (isprint(key)) wechochar(userinfo[0].window, key); ! // CR may need to scroll the window. if (key == '\r') *************** *** 159,163 **** wmove(userinfo[0].window, 1, 0); } ! if (key == KEY_BACKSPACE && x > 0) { --- 164,168 ---- wmove(userinfo[0].window, 1, 0); } ! if (key == KEY_BACKSPACE && x > 0) { *************** *** 168,172 **** } wrefresh(userinfo[0].window); ! // Send char to remote system(s) for (i=1; i<num_users; i++) --- 173,177 ---- } wrefresh(userinfo[0].window); ! // Send char to remote system(s) for (i=1; i<num_users; i++) *************** *** 176,180 **** return 0; } ! if (state == STATE_COMMAND) { --- 181,185 ---- return 0; } ! if (state == STATE_COMMAND) { *************** *** 194,198 **** } ! if (key == '\r') // Action command { --- 199,203 ---- } ! if (key == '\r') // Action command { *************** *** 202,210 **** cmd_x=1; cmd_y=1; ! // Clear the last command wmove(Main_Window, cmd_y, cmd_x); wclrtoeol(Main_Window); ! if (num_connected_users > 1 && !userinfo[0].held) { --- 207,215 ---- cmd_x=1; cmd_y=1; ! // Clear the last command wmove(Main_Window, cmd_y, cmd_x); wclrtoeol(Main_Window); ! if (num_connected_users > 1 && !userinfo[0].held) { *************** *** 244,247 **** --- 249,267 ---- } + static void resize_screen(int rows, int cols) + { + resize_term(rows, cols); + Screen_Width = cols; + Screen_Height = rows; + wresize(stdscr, rows, cols); + + werase(Main_Window); + draw_title(Main_Window); + wrefresh(stdscr); + + /* Resize all sub-windows with conversations in */ + rearrange_windows(num_users); + wrefresh(curscr); + } // Main loop for ncurses display *************** *** 268,280 **** fd_set fds; int i; ! FD_ZERO(&fds); if (local_sock != -1) FD_SET(local_sock, &fds); for (i=0; i<num_users; i++) FD_SET(userinfo[i].fd, &fds); ! status = select(FD_SETSIZE, &fds, NULL, NULL, init_cmd?&tv:NULL); if (status < 0) { if (errno != EINTR && errno != ERESTART) { --- 288,310 ---- fd_set fds; int i; ! FD_ZERO(&fds); if (local_sock != -1) FD_SET(local_sock, &fds); for (i=0; i<num_users; i++) FD_SET(userinfo[i].fd, &fds); ! status = select(FD_SETSIZE, &fds, NULL, NULL, init_cmd?&tv:NULL); if (status < 0) { + if (sigwinch_happened) + { + struct winsize size; + + if (ioctl(fileno(stdout), TIOCGWINSZ, &size) == 0) { + resize_screen(size.ws_row, size.ws_col); + } + sigwinch_happened = 0; + } + if (errno != EINTR && errno != ERESTART) { *************** *** 288,292 **** if (local_sock != -1 && FD_ISSET(local_sock, &fds)) localsock_callback(local_sock); ! for (i=0; i<num_users; i++) { --- 318,322 ---- if (local_sock != -1 && FD_ISSET(local_sock, &fds)) localsock_callback(local_sock); ! for (i=0; i<num_users; i++) { *************** *** 315,321 **** close(userinfo[i].out_fd); } ! ! /* ! * Clear up after ncurses */ clear(); --- 345,351 ---- close(userinfo[i].out_fd); } ! ! /* ! * Clear up after ncurses */ clear(); *************** *** 324,332 **** if (end_message) ! printf("%s\n", end_message); ! return 0; } /* * Initialise ncurses and return the top-level window ID --- 354,398 ---- if (end_message) ! printf("%s\n", end_message); ! return 0; } + static void window_size_change(int sig) + { + sigwinch_happened = 1; + } + + static void draw_title(WINDOW *window) + { + char date[32]; + time_t the_time; + struct tm the_tm; + + /* Format the day */ + the_time = time(NULL); + the_tm = *localtime(&the_time); + strftime(date, sizeof(date), "%d-%b-%Y", &the_tm); + + /* Draw the main title */ + wattrset(window, A_BOLD | COLOR_PAIR(COLOR_YELLOW)); + mvwprintw(window, 0,Screen_Width/2-10,"%s", "Linux Phone Facility"); + + wattrset(window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); + mvwprintw(window, 0,Screen_Width-11,"%s", date); + + /* Draw the prompt */ + wattrset(window, A_DIM | COLOR_PAIR(COLOR_WHITE)); + mvwprintw(window, 1,0,"%c", Switch_Hook_Char); + + wattrset(window, A_DIM | COLOR_PAIR(COLOR_WHITE)); + mvwprintw(window, 3,0,""); + + wmove(window, 3, 0); + wattrset(window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); + whline(window, ACS_HLINE, Screen_Width); + wmove(window, 1, 1); + } + /* * Initialise ncurses and return the top-level window ID *************** *** 335,342 **** { WINDOW* window = NULL; ! char date[32]; ! time_t the_time; ! struct tm the_tm; ! window = initscr(); if (window == NULL) --- 401,405 ---- { WINDOW* window = NULL; ! window = initscr(); if (window == NULL) *************** *** 346,356 **** } - // Format the day - the_time = time(NULL); - the_tm = *localtime(&the_time); - strftime(date, sizeof(date), "%d-%b-%Y", &the_tm); - /* Setup terminal attributes */ ! start_color(); /* Enable colour processing */ noecho(); /* Don't echo input chars */ --- 409,414 ---- } /* Setup terminal attributes */ ! start_color(); /* Enable colour processing */ noecho(); /* Don't echo input chars */ *************** *** 362,365 **** --- 420,425 ---- getmaxyx(stdscr, Screen_Height, Screen_Width); /* Get the screen size */ + signal(SIGWINCH, window_size_change); + /* Set up colour pairs that match the foreground colours */ init_pair(COLOR_BLACK, COLOR_BLACK, COLOR_BLACK); *************** *** 372,397 **** init_pair(COLOR_WHITE, COLOR_WHITE, COLOR_BLACK); ! /* Draw the main title */ ! wattrset(window, A_BOLD | COLOR_PAIR(COLOR_YELLOW)); ! mvwprintw(window, 0,Screen_Width/2-10,"%s", "Linux Phone Facility"); - wattrset(window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); - mvwprintw(window, 0,Screen_Width-11,"%s", date); - - /* Draw the prompt */ - wattrset(window, A_DIM | COLOR_PAIR(COLOR_WHITE)); - mvwprintw(window, 1,0,"%c", Switch_Hook_Char); - - wattrset(window, A_DIM | COLOR_PAIR(COLOR_WHITE)); - mvwprintw(window, 3,0,""); - - wmove(window, 3, 0); - wattrset(window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); - whline(window, ACS_HLINE, Screen_Width); - wmove(window, 1, 1); - /* Update the whole screen now we have created all the windows. From now on all updates will be optimised */ - wrefresh(stdscr); Main_Window = window; --- 432,439 ---- init_pair(COLOR_WHITE, COLOR_WHITE, COLOR_BLACK); ! draw_title(window); /* Update the whole screen now we have created all the windows. From now on all updates will be optimised */ wrefresh(stdscr); Main_Window = window; *************** *** 426,434 **** win_height = (Screen_Height-4) / (num); ! // Impose a maximum height of half the display area. if (win_height > (Screen_Height-4)/2) win_height = (Screen_Height-4)/2; ! for (i=0; i<num; i++) { --- 468,476 ---- win_height = (Screen_Height-4) / (num); ! // Impose a maximum height of half the display area. if (win_height > (Screen_Height-4)/2) win_height = (Screen_Height-4)/2; ! for (i=0; i<num; i++) { *************** *** 443,447 **** wmove(userinfo[i].window, userinfo[i].window_bottom+1, 0); wclrtoeol(userinfo[i].window); ! wresize(userinfo[i].window, win_height, Screen_Width); wsetscrreg(userinfo[i].window, 1, win_height-2); --- 485,489 ---- wmove(userinfo[i].window, userinfo[i].window_bottom+1, 0); wclrtoeol(userinfo[i].window); ! wresize(userinfo[i].window, win_height, Screen_Width); wsetscrreg(userinfo[i].window, 1, win_height-2); *************** *** 468,474 **** userinfo[num_users].fd_callback = fdc; strcpy(userinfo[num_users].name, name); ! // Only create the window if the user has been answered. ! if (out_fd != -1) { new_talk_window(num_users, name); --- 510,516 ---- userinfo[num_users].fd_callback = fdc; strcpy(userinfo[num_users].name, name); ! // Only create the window if the user has been answered. ! if (out_fd != -1) { new_talk_window(num_users, name); *************** *** 502,506 **** { int i,j; ! for (i=0; i<num_users; i++) { --- 544,548 ---- { int i,j; ! for (i=0; i<num_users; i++) { *************** *** 508,519 **** { int x,y; ! wattrset(userinfo[i].window, A_NORMAL | COLOR_PAIR(COLOR_WHITE)); ! for (j=0; j<strlen(msg); j++) { if (isprint(msg[j])) wechochar(userinfo[i].window, msg[j]); ! if (msg[j] == '\r') { --- 550,561 ---- { int x,y; ! wattrset(userinfo[i].window, A_NORMAL | COLOR_PAIR(COLOR_WHITE)); ! for (j=0; j<strlen(msg); j++) { if (isprint(msg[j])) wechochar(userinfo[i].window, msg[j]); ! if (msg[j] == '\r') { *************** *** 536,540 **** wmove(userinfo[i].window, 1, 0); } ! if (msg[j] == 127) // Backspace { --- 578,582 ---- wmove(userinfo[i].window, 1, 0); } ! if (msg[j] == 127) // Backspace { *************** *** 583,587 **** update_panels(); } ! // Remove it from the list if (i != num_users) --- 625,629 ---- update_panels(); } ! // Remove it from the list if (i != num_users) *************** *** 628,637 **** wattrset(userinfo[win].window, A_NORMAL | COLOR_PAIR(COLOR_WHITE)); if (userinfo[win].held == 2) ! mvwprintw(userinfo[win].window, 0, 0, "%s", "(YOU HAVE HELD)"); else mvwprintw(userinfo[win].window, 0, Screen_Width-14, "%s", "(HAS YOU HELD)"); } ! wattrset(userinfo[win].window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); wmove(userinfo[win].window, userinfo[win].window_bottom+1, 0); --- 670,679 ---- wattrset(userinfo[win].window, A_NORMAL | COLOR_PAIR(COLOR_WHITE)); if (userinfo[win].held == 2) ! mvwprintw(userinfo[win].window, 0, 0, "%s", "(YOU HAVE HELD)"); else mvwprintw(userinfo[win].window, 0, Screen_Width-14, "%s", "(HAS YOU HELD)"); } ! wattrset(userinfo[win].window, A_BOLD | COLOR_PAIR(COLOR_WHITE)); wmove(userinfo[win].window, userinfo[win].window_bottom+1, 0); *************** *** 649,653 **** else state = STATE_TALK; // back to command mode ! for (i=0; i<num_users; i++) { --- 691,695 ---- else state = STATE_TALK; // back to command mode ! for (i=0; i<num_users; i++) { *************** *** 655,659 **** { getyx(userinfo[i].window, y, x); ! userinfo[i].held = held; draw_window_decorations(i); --- 697,701 ---- { getyx(userinfo[i].window, y, x); ! userinfo[i].held = held; draw_window_decorations(i); |
From: Patrick C. <pa...@us...> - 2006-01-26 13:32:55
|
Update of /cvsroot/linux-decnet/dnprogs/dndir In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8697 Modified Files: dndir.cc Log Message: Fix display bugs when file is locked. Index: dndir.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dndir/dndir.cc,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** dndir.cc 1 Sep 2005 08:56:01 -0000 1.6 --- dndir.cc 26 Jan 2006 13:32:45 -0000 1.7 *************** *** 377,381 **** if (sm->get_code() == 0x4030) { ! printf("%-*s ", filename_width, name); if (single_column) { --- 377,381 ---- if (sm->get_code() == 0x4030) { ! printf("%-*s", filename_width, name); if (single_column) { *************** *** 390,393 **** --- 390,394 ---- } } + name_pending = false; dap_contran_message cm; *************** *** 520,524 **** if (sm->get_code() == 0x4030) { ! printf("%s File current locked by another user\n", name_msg->get_namespec()); --- 521,525 ---- if (sm->get_code() == 0x4030) { ! printf("%s File current locked by another user\n\n", name_msg->get_namespec()); *************** *** 537,540 **** --- 538,542 ---- return false; } + name_pending = false; } break; |
From: Patrick C. <pa...@us...> - 2006-01-26 10:43:06
|
Update of /cvsroot/linux-decnet/dnprogs/apps In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14469 Modified Files: ctermd.c Log Message: Clear controlling TTY so the user can have job-control in the shell. Index: ctermd.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/apps/ctermd.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** ctermd.c 23 Jan 2006 13:15:24 -0000 1.7 --- ctermd.c 26 Jan 2006 10:42:56 -0000 1.8 *************** *** 366,369 **** --- 366,372 ---- if (t > 2) close(t); + ioctl(0, TIOCSCTTY, (char *)NULL); + + putenv("TERM=vt100"); execlp("/bin/login", "login", (char *)0); |
From: Patrick C. <pa...@us...> - 2006-01-24 14:05:24
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23139 Modified Files: found.c tty.c dnlogin.c Log Message: Fix misc sparc stuff Index: found.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/found.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** found.c 11 Jan 2006 09:00:42 -0000 1.18 --- found.c 24 Jan 2006 14:05:09 -0000 1.19 *************** *** 167,172 **** if ( (len=dnet_recv(sockfd, inbuf, sizeof(inbuf), MSG_EOR|MSG_DONTWAIT|MSG_NOSIGNAL)) <= 0) { ! if (len == -1 && errno == EAGAIN) return 0; /* Remote end shut down */ --- 167,173 ---- if ( (len=dnet_recv(sockfd, inbuf, sizeof(inbuf), MSG_EOR|MSG_DONTWAIT|MSG_NOSIGNAL)) <= 0) + { ! if (len == -1 && (errno == EAGAIN || errno == ESPIPE)) return 0; /* Remote end shut down */ Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -r1.25 -r1.26 *** tty.c 17 Jan 2006 14:20:44 -0000 1.25 --- tty.c 24 Jan 2006 14:05:09 -0000 1.26 *************** *** 286,289 **** --- 286,291 ---- { termfd = open(name, O_RDWR); + if (termfd == -1) + return -1; tcgetattr(termfd, &old_term); Index: dnlogin.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/dnlogin.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** dnlogin.c 22 Oct 2005 10:08:41 -0000 1.12 --- dnlogin.c 24 Jan 2006 14:05:09 -0000 1.13 *************** *** 167,171 **** if (found_setup_link(argv[optind], DNOBJECT_CTERM, cterm_process_network) == 0) { ! tty_setup("/dev/fd/0", 1); mainloop(); tty_setup(NULL, 0); --- 167,174 ---- if (found_setup_link(argv[optind], DNOBJECT_CTERM, cterm_process_network) == 0) { ! if (tty_setup("/dev/fd/0", 1) == -1) ! if (tty_setup("/proc/self/fd/0", 1)) { ! perror("cannot connect to stdin\n"); ! } mainloop(); tty_setup(NULL, 0); |
From: Patrick C. <pa...@us...> - 2006-01-24 13:53:28
|
Update of /cvsroot/linux-decnet/dnprogs/libdaemon In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18339/libdaemon Modified Files: Makefile Log Message: $(CCFLAGS) does not exist. use $(CFLAGS) Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdaemon/Makefile,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** Makefile 12 Aug 2004 09:17:34 -0000 1.8 --- Makefile 24 Jan 2006 13:53:20 -0000 1.9 *************** *** 17,21 **** $(SHAREDLIB): $(PICOBJS) ! $(CC) $(CCFLAGS) -shared -o $@ -Wl,-soname=$(LIBNAME).so.$(MAJOR_VERSION) $(LIBCRYPT) $^ ln -sf $(SHAREDLIB) $(LIBNAME).so.$(MAJOR_VERSION) ln -sf $(LIBNAME).so.$(MAJOR_VERSION) $(LIBNAME).so --- 17,21 ---- $(SHAREDLIB): $(PICOBJS) ! $(CC) $(CFLAGS) -shared -o $@ -Wl,-soname=$(LIBNAME).so.$(MAJOR_VERSION) $(LIBCRYPT) $^ ln -sf $(SHAREDLIB) $(LIBNAME).so.$(MAJOR_VERSION) ln -sf $(LIBNAME).so.$(MAJOR_VERSION) $(LIBNAME).so |
From: Patrick C. <pa...@us...> - 2006-01-23 13:15:32
|
Update of /cvsroot/linux-decnet/dnprogs/apps In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25542 Modified Files: ctermd.c Log Message: Wait a bit before closing the socket. so the data-ack can arrive. bit of a hack but it might just fix the RSX disconnect bug :) Index: ctermd.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/apps/ctermd.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** ctermd.c 22 Oct 2005 10:58:17 -0000 1.6 --- ctermd.c 23 Jan 2006 13:15:24 -0000 1.7 *************** *** 120,124 **** void cterm_unbind (void) { ! char cterm_unbind_msg[] = {0x02,0x03,0x00}; write(net,cterm_unbind_msg,3); } --- 120,124 ---- void cterm_unbind (void) { ! char cterm_unbind_msg[3] = {0x02,0x03,0x00}; write(net,cterm_unbind_msg,3); } *************** *** 131,134 **** --- 131,135 ---- cterm_unbind(); + sleep(1); /* ugh!. Wait for data-ack to arrive */ p=line+sizeof("/dev/")-1; *************** *** 240,244 **** signal(SIGTTOU, SIG_IGN); ! cterm_write("CTERM Version 1.0.5\r\nDECnet for Linux\r\n\n"); cterm_read(); --- 241,245 ---- signal(SIGTTOU, SIG_IGN); ! cterm_write("CTERM Version 1.0.6\r\nDECnet for Linux\r\n\n"); cterm_read(); |
From: Patrick C. <pa...@us...> - 2006-01-17 14:20:58
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2687 Modified Files: tty.c Log Message: Slightly improved CR handling Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -r1.24 -r1.25 *** tty.c 17 Jan 2006 13:56:07 -0000 1.24 --- tty.c 17 Jan 2006 14:20:44 -0000 1.25 *************** *** 104,113 **** if (len == 1 && *buf == 0) return len; if (len == 1 && buf[0] == '\f') return write(termfd, "\033[H\033[2J", 7); if (debug & 16) { int i; ! fprintf(stderr, "TTY: Printing "); for (i=0; i<len; i++) fprintf(stderr, "%02x ", (unsigned char)buf[i]); --- 104,116 ---- if (len == 1 && *buf == 0) return len; + + /* FF is a special case (perhaps!) */ if (len == 1 && buf[0] == '\f') return write(termfd, "\033[H\033[2J", 7); + if (debug & 16) { int i; ! fprintf(stderr, "TTY: Printing %d: ", len); for (i=0; i<len; i++) fprintf(stderr, "%02x ", (unsigned char)buf[i]); *************** *** 115,119 **** } write(termfd, buf, len); ! last_char = buf[len-1]; return len; } --- 118,127 ---- } write(termfd, buf, len); ! if (len) ! { ! last_char = buf[len-1]; ! if (debug & 4) ! fprintf(stderr, "TTY: Setting last_char to %02x\n", last_char); ! } return len; } |
From: Patrick C. <pa...@us...> - 2006-01-17 13:56:22
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28523 Modified Files: tty.c Log Message: Feed all writes through tty_write() so we can keep a better track of line feeds etc. Allow ^L to clear the screen (I might regret this). Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -r1.23 -r1.24 *** tty.c 10 Jan 2006 13:34:30 -0000 1.23 --- tty.c 17 Jan 2006 13:56:07 -0000 1.24 *************** *** 101,106 **** --- 101,117 ---- return len; + /* Ignore NULs */ if (len == 1 && *buf == 0) return len; + if (len == 1 && buf[0] == '\f') + return write(termfd, "\033[H\033[2J", 7); + if (debug & 16) + { + int i; + fprintf(stderr, "TTY: Printing "); + for (i=0; i<len; i++) + fprintf(stderr, "%02x ", (unsigned char)buf[i]); + fprintf(stderr, "\n"); + } write(termfd, buf, len); last_char = buf[len-1]; *************** *** 120,124 **** fprintf(stderr, "TTY: format_cr, last char was %x\n", last_char); if (last_char == '\r') ! write(termfd, &lf, 1); } --- 131,135 ---- fprintf(stderr, "TTY: format_cr, last char was %x\n", last_char); if (last_char == '\r') ! tty_write(&lf, 1); } *************** *** 200,204 **** fprintf(stderr, "TTY: start_read promptlen = %d, maxlen=%d\n", promptlen, len); ! if (promptlen) write(termfd, prompt, promptlen); if (len < 0) len = sizeof(input_buf); --- 211,215 ---- fprintf(stderr, "TTY: start_read promptlen = %d, maxlen=%d\n", promptlen, len); ! if (promptlen) tty_write(prompt, promptlen); if (len < 0) len = sizeof(input_buf); *************** *** 218,222 **** input_len = len-promptlen; input_pos = input_len; ! write(termfd, input_buf, input_len); reading = 1; --- 229,233 ---- input_len = len-promptlen; input_pos = input_len; ! tty_write(input_buf, input_len); reading = 1; *************** *** 313,317 **** static void erase_eol(void) { ! write(termfd, "\033[0K", 4); } --- 324,328 ---- static void erase_eol(void) { ! tty_write("\033[0K", 4); } *************** *** 322,326 **** sprintf(buf, "\r\033[%dC", hpos); ! write(termfd, buf, strlen(buf)); } --- 333,337 ---- sprintf(buf, "\r\033[%dC", hpos); ! tty_write(buf, strlen(buf)); } *************** *** 338,342 **** move_cursor_abs(line_start_pos); erase_eol(); ! write(termfd, input_buf, input_len); move_cursor_abs(line_start_pos + input_pos); } --- 349,354 ---- move_cursor_abs(line_start_pos); erase_eol(); ! tty_write(input_buf, input_len); ! move_cursor_abs(line_start_pos + input_pos); } *************** *** 487,491 **** input_pos--; input_len--; ! if (echo) write(termfd, "\033[D \033[D", 7); if (input_pos != input_len) { --- 499,503 ---- input_pos--; input_len--; ! if (echo) tty_write("\033[D \033[D", 7); if (input_pos != input_len) { |
From: Patrick C. <pa...@us...> - 2006-01-17 11:35:54
|
Update of /cvsroot/linux-decnet/dnprogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22401 Modified Files: TODO Log Message: Revised TODO Index: TODO =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/TODO,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** TODO 10 Jul 2002 09:33:43 -0000 1.6 --- TODO 17 Jan 2006 11:35:29 -0000 1.7 *************** *** 3,15 **** fal ! Reports of problems with FAL on DECnet/E. I'm sending too many ACKS again. ! Also odd problems on RSX11M, maybe the same. phone: Race condition in ANSWER where you can get the message "no-one is calling ! you now" when there is. Only happens with "phone answer" on the shell ! command line. Only happens rarely (to me!) ! sethost ! line-editting needs adding - rewrite as dnlogin started. ! problem with sethost->VMS then set host to VMS again. maybe echo troubles --- 3,20 ---- fal ! Reports of problems with FAL on DECnet/E. Need to test with new ! RSX-friendly code. ! ! ctermd ! Logs "NCT -- Internal error " on RSX when disconnecting. phone: Race condition in ANSWER where you can get the message "no-one is calling ! you now" when there is. Only happens with "phone answer" on the shell ! command line. Only happens rarely (to me!). ! ! initial command to phone ignores params. eg; ! phone dir a11rtr:: ! thinks you just typed "dir" cos it ignores argv[2] ! Don't think it works to non-VMS machines |
From: Patrick C. <pa...@us...> - 2006-01-17 11:34:13
|
Update of /cvsroot/linux-decnet/dnprogs/dncopy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22089/dncopy Modified Files: dnetfile_dap.cc Log Message: If we get a status message in the middle of a send then we need to restart. Index: dnetfile_dap.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dncopy/dnetfile_dap.cc,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** dnetfile_dap.cc 5 Jan 2006 19:24:13 -0000 1.10 --- dnetfile_dap.cc 17 Jan 2006 11:33:54 -0000 1.11 *************** *** 260,263 **** --- 260,266 ---- return -1; } + // good STATUS here means we need to request the next record + if (dap_check_status(m, 0) == 0) + dap_send_get_or_put(); return dap_check_status(m,0); } |
From: Patrick C. <pa...@us...> - 2006-01-17 11:29:33
|
Update of /cvsroot/linux-decnet/dnprogs/fal In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21147 Modified Files: directory.cc open.cc params.h server.cc task.cc Log Message: Some fixes to cope with RSX Index: directory.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/fal/directory.cc,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** directory.cc 17 Jul 2002 07:34:22 -0000 1.6 --- directory.cc 17 Jan 2006 11:29:22 -0000 1.7 *************** *** 1,4 **** /****************************************************************************** ! (c) 1998-2002 P.J. Caulfield pa...@ty... This program is free software; you can redistribute it and/or modify --- 1,4 ---- /****************************************************************************** ! (c) 1998-2006 P.J. Caulfield pa...@ty... This program is free software; you can redistribute it and/or modify *************** *** 13,18 **** ****************************************************************************** */ ! // task.cc ! // Code for a task within a FAL server process. #include <sys/types.h> #include <sys/socket.h> --- 13,18 ---- ****************************************************************************** */ ! // directory.cc ! // Code for a directory task within a FAL server process. #include <sys/types.h> #include <sys/socket.h> *************** *** 85,95 **** dap_access_message *am = (dap_access_message *)m; ! strcpy(filespec, am->get_filespec()); // If we are talking to RSX and it did not send a filespec // then default to *.* ! if (params.remote_os == 4 && filespec[0] == '\0') { ! strcpy(filespec, "*.*"); } --- 85,100 ---- dap_access_message *am = (dap_access_message *)m; ! if (am->get_filespec()) ! strcpy(filespec, am->get_filespec()); ! else ! filespec[0] = '\0'; // If we are talking to RSX and it did not send a filespec // then default to *.* ! if ((params.remote_os == dap_config_message::OS_RSX11M || ! params.remote_os == dap_config_message::OS_RSX11MP) && ! filespec[0] == '\0') { ! strcpy(filespec, "[]*.*"); } *************** *** 303,306 **** --- 308,314 ---- { attrib_msg->set_stat(&st, true); + if (!params.can_do_stmlf) + attrib_msg->set_rfm(dap_attrib_message::FB$VAR); + fake_file_type(path, attrib_msg); if (!attrib_msg->write(conn)) return false; Index: open.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/fal/open.cc,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -r1.17 -r1.18 *** open.cc 11 Oct 2002 16:01:35 -0000 1.17 --- open.cc 17 Jan 2006 11:29:22 -0000 1.18 *************** *** 190,194 **** } } ! return send_ack_and_unblock(); } break; --- 190,194 ---- } } ! return send_ack_and_unblock(); } break; *************** *** 430,433 **** --- 430,436 ---- } while (newchar != EOF && newchar != '\n' && buflen < conn.get_blocksize()-10); ateof = feof(stream); + /* Remove the trailing LF for non STMLF capable OSs */ + if (newchar == '\n') + buflen--; } } Index: params.h =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/fal/params.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** params.h 17 Jul 2002 07:34:23 -0000 1.2 --- params.h 17 Jan 2006 11:29:22 -0000 1.3 *************** *** 13,16 **** --- 13,17 ---- bool use_metafiles; bool use_adf; + bool can_do_stmlf; int remote_os; Index: server.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/fal/server.cc,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** server.cc 1 Feb 2001 13:38:30 -0000 1.3 --- server.cc 17 Jan 2006 11:29:22 -0000 1.4 *************** *** 245,248 **** --- 245,253 ---- DAPLOG((LOG_DEBUG, "Remote OS is %d\n", params.remote_os)); + // PJC Warning, dodgy logic! + params.can_do_stmlf = true; + if (params.remote_os == dap_config_message::OS_RSX11M || + params.remote_os == dap_config_message::OS_RSX11MP) + params.can_do_stmlf = false; } else Index: task.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/fal/task.cc,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -r1.17 -r1.18 *** task.cc 14 Oct 2005 10:59:06 -0000 1.17 --- task.cc 17 Jan 2006 11:29:22 -0000 1.18 *************** *** 1,4 **** /****************************************************************************** ! (c) 1998-2002 P.J. Caulfield pa...@ty... This program is free software; you can redistribute it and/or modify --- 1,4 ---- /****************************************************************************** ! (c) 1998-2006 P.J. Caulfield pa...@ty... This program is free software; you can redistribute it and/or modify *************** *** 85,90 **** strchr(name, ';') || strchr(name, ':') ) return vms_format=true; else ! return vms_format=false; } --- 85,102 ---- strchr(name, ';') || strchr(name, ':') ) return vms_format=true; + + // If the filename is all upper case then + // we also assume it's 'VMS' format. Though in this + // case it's more likely to have come from RSX... + unsigned int i; + bool allupper = true; + for (i=0; i<strlen(name); i++) + if (!isupper(name[i])) + allupper = false; + + if (allupper && strlen(name)) + return vms_format=true; else ! return vms_format=false; } *************** *** 142,146 **** { // If the remote client is RSX then lower-case the filename ! if (params.remote_os == 4) { dap_connection::makelower(file); --- 154,159 ---- { // If the remote client is RSX then lower-case the filename ! if (params.remote_os == dap_config_message::OS_RSX11M || ! params.remote_os == dap_config_message::OS_RSX11MP) { dap_connection::makelower(file); *************** *** 528,531 **** --- 541,546 ---- attrib_msg.set_stat(&st, send_dev); + if (!params.can_do_stmlf) + attrib_msg.set_rfm(dap_attrib_message::FB$VAR); fake_file_type(block_size, use_records, filename, &attrib_msg); *************** *** 577,581 **** dap_name_message name_msg; ! if (vms_format || params.remote_os == 4) { char vmsname[PATH_MAX]; --- 592,598 ---- dap_name_message name_msg; ! if (vms_format || ! params.remote_os == dap_config_message::OS_RSX11M || ! params.remote_os == dap_config_message::OS_RSX11MP) { char vmsname[PATH_MAX]; |
From: Patrick C. <pa...@us...> - 2006-01-17 10:42:31
|
Update of /cvsroot/linux-decnet/dnprogs/libdap In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10016 Modified Files: protocol.h Log Message: Allow access to syscap bits. Index: protocol.h =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdap/protocol.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** protocol.h 14 Oct 2005 12:18:55 -0000 1.8 --- protocol.h 17 Jan 2006 10:42:22 -0000 1.9 *************** *** 210,213 **** --- 210,217 ---- return ostype.get_byte(0); } + bool get_syscap_bit(int bit) + { + return syscap.get_bit(bit); + } // OSs |
From: Patrick C. <pa...@us...> - 2006-01-11 09:00:53
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18010 Modified Files: found.c Log Message: Use the right number for UNBIND. the doc has a typo in it :) Index: found.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/found.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -r1.17 -r1.18 *** found.c 6 Jan 2006 15:40:02 -0000 1.17 --- found.c 11 Jan 2006 09:00:42 -0000 1.18 *************** *** 35,39 **** /* Foundation services messages */ #define FOUND_MSG_BIND 1 ! #define FOUND_MSG_UNBIND 3 #define FOUND_MSG_BINDACCEPT 4 #define FOUND_MSG_ENTERMODE 5 --- 35,39 ---- /* Foundation services messages */ #define FOUND_MSG_BIND 1 ! #define FOUND_MSG_UNBIND 2 #define FOUND_MSG_BINDACCEPT 4 #define FOUND_MSG_ENTERMODE 5 *************** *** 233,237 **** break; ! case 2: /* Reserved */ break; --- 233,237 ---- break; ! case 3: /* Reserved */ break; |
From: Patrick C. <pa...@us...> - 2006-01-10 13:34:37
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12395 Modified Files: cterm.c tty.c Log Message: Fix some readahead bugs that caused wierd behaviour on RSX Index: cterm.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/cterm.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** cterm.c 6 Jan 2006 15:40:02 -0000 1.22 --- cterm.c 10 Jan 2006 13:34:30 -0000 1.23 *************** *** 210,220 **** tty_allow_edit(!(DDD==2)); tty_set_uppercase(II==2); - - tty_start_read(buf+ptr+term_len, len-term_len-ptr, eoprompt); - - if (Q) tty_set_timeout(timeout); tty_set_maxlen(maxlength); tty_echo_terminator((flags>>12)&1); return len; } --- 210,220 ---- tty_allow_edit(!(DDD==2)); tty_set_uppercase(II==2); tty_set_maxlen(maxlength); + if (Q) tty_set_timeout(timeout); tty_echo_terminator((flags>>12)&1); + /* do the biz */ + tty_start_read(buf+ptr+term_len, len-term_len-ptr, eoprompt); + return len; } *************** *** 709,713 **** if (oobchar == CTRL_C || oobchar == CTRL_Y) tty_write("\033[7m Interrupt \033[0m\n", 20); ! if (oobchar == CTRL_O) { if (tty_discard()) --- 709,713 ---- if (oobchar == CTRL_C || oobchar == CTRL_Y) tty_write("\033[7m Interrupt \033[0m\n", 20); ! if (oobchar == CTRL_O) { if (tty_discard()) Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** tty.c 8 Jan 2006 18:03:26 -0000 1.22 --- tty.c 10 Jan 2006 13:34:30 -0000 1.23 *************** *** 81,84 **** --- 81,86 ---- input_len = input_pos = 0; reading = 0; + if (debug & 4) + fprintf(stderr, "TTY: clearing 'reading' flag\n"); echo = 1; interpret_escape = 0; *************** *** 217,222 **** input_pos = input_len; write(termfd, input_buf, input_len); ! ! max_read_len = len; /* Now add in any typeahead */ --- 219,223 ---- input_pos = input_len; write(termfd, input_buf, input_len); ! reading = 1; /* Now add in any typeahead */ *************** *** 231,242 **** if (input_len + copylen > sizeof(input_buf)) copylen = sizeof(input_buf)-input_len; ! ! memcpy(input_buf+input_len, rahead_buf, copylen); ! tty_write(rahead_buf, copylen); ! input_len += copylen; ! input_pos += copylen; ! rahead_len = 0; } - reading = 1; } --- 232,240 ---- if (input_len + copylen > sizeof(input_buf)) copylen = sizeof(input_buf)-input_len; ! rahead_len -= copylen; ! tty_process_terminal(rahead_buf, copylen); ! if (debug & 4) ! fprintf(stderr, "TTY: readahead now = %d bytes\n", rahead_len); } } *************** *** 255,258 **** --- 253,259 ---- { max_read_len = len; + if (debug & 4) + fprintf(stderr, "TTY: max_read_len now = %d \n", len); + } *************** *** 372,375 **** --- 373,387 ---- } + /* Read not active, store in the read ahead buffer */ + if (!reading) + { + if (rahead_len == 0) + rahead_change(1); /* tell CTERM */ + + if (rahead_len < sizeof(rahead_buf)) + rahead_buf[rahead_len++] = buf[i]; + continue; + } + /* Is it ESCAPE ? */ if (buf[i] == ESC && esc_len == 0 && interpret_escape) *************** *** 388,392 **** input_buf[input_len++] = buf[i]; send_input_buffer(SEND_FLAG_TERMINATOR); - reading = 0; continue; } --- 400,403 ---- *************** *** 467,471 **** send_input_buffer(SEND_FLAG_TERMINATOR); input_len = input_pos = 0; ! reading = 0; case CTRL_O: discard = ~discard; --- 478,482 ---- send_input_buffer(SEND_FLAG_TERMINATOR); input_len = input_pos = 0; ! break; case CTRL_O: discard = ~discard; *************** *** 488,502 **** } - /* Read not active, store in the read ahead buffer */ - if (!reading) - { - if (rahead_len == 0) - rahead_change(1); /* tell CTERM */ - - if (rahead_len < sizeof(rahead_buf)) - rahead_buf[rahead_len++] = buf[i]; - continue; - } - if (convert_uppercase) buf[i] &= 0x5F; --- 499,502 ---- |
From: Patrick C. <pa...@us...> - 2006-01-08 18:03:39
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32015 Modified Files: tty.c Log Message: Don't send SEND_FLAG_VALID_ESCAPE when we just had a terminator. Fixes connection to RSX Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** tty.c 15 Nov 2005 10:12:34 -0000 1.21 --- tty.c 8 Jan 2006 18:03:26 -0000 1.22 *************** *** 387,391 **** } input_buf[input_len++] = buf[i]; ! send_input_buffer(SEND_FLAG_VALID_ESCAPE); reading = 0; continue; --- 387,391 ---- } input_buf[input_len++] = buf[i]; ! send_input_buffer(SEND_FLAG_TERMINATOR); reading = 0; continue; |
From: Patrick C. <pa...@us...> - 2006-01-06 15:40:12
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25879 Modified Files: cterm.c found.c Log Message: Send local username to remote end. Tidy *Interrupt* message Index: cterm.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/cterm.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** cterm.c 27 Oct 2005 13:31:13 -0000 1.21 --- cterm.c 6 Jan 2006 15:40:02 -0000 1.22 *************** *** 708,712 **** { if (oobchar == CTRL_C || oobchar == CTRL_Y) ! tty_write("\033[7mInterrupt\033[0m\n", 18); if (oobchar == CTRL_O) { --- 708,712 ---- { if (oobchar == CTRL_C || oobchar == CTRL_Y) ! tty_write("\033[7m Interrupt \033[0m\n", 20); if (oobchar == CTRL_O) { Index: found.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/found.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -r1.16 -r1.17 *** found.c 27 Oct 2005 10:07:45 -0000 1.16 --- found.c 6 Jan 2006 15:40:02 -0000 1.17 *************** *** 248,251 **** --- 248,253 ---- struct nodeent *np; struct sockaddr_dn sockaddr; + struct accessdata_dn accessdata; + char *local_user; if ( (np=getnodebyname(node)) == NULL) *************** *** 262,265 **** --- 264,282 ---- } + /* Send the logged in userID for niceness sake */ + memset(&accessdata, 0, sizeof(accessdata)); + local_user = cuserid(NULL); + if (!local_user || local_user == (char *)0xffffffff) + local_user = getenv("LOGNAME"); + + if (!local_user) local_user = getenv("USER"); + if (local_user) + { + strcpy((char *)accessdata.acc_acc, local_user); + accessdata.acc_accl = strlen((char *)accessdata.acc_acc); + setsockopt(sockfd, DNPROTO_NSP, SO_CONACCESS, &accessdata, + sizeof(accessdata)); + } + sockaddr.sdn_family = AF_DECnet; sockaddr.sdn_flags = 0x00; |
From: Patrick C. <pa...@us...> - 2006-01-05 19:24:21
|
Update of /cvsroot/linux-decnet/dnprogs/dncopy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11359 Modified Files: dncopy.cc dnetfile.cc dnetfile_dap.cc Log Message: Get rid of spurious protection error Index: dncopy.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dncopy/dncopy.cc,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** dncopy.cc 1 Sep 2005 08:34:39 -0000 1.7 --- dncopy.cc 5 Jan 2006 19:24:13 -0000 1.8 *************** *** 61,65 **** int rrl = 0; char opt; ! char protection[255]; struct timeval start_tv; unsigned long long bytes_copied = 0; --- 61,65 ---- int rrl = 0; char opt; ! char protection[255]={'\0'}; struct timeval start_tv; unsigned long long bytes_copied = 0; Index: dnetfile.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dncopy/dnetfile.cc,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** dnetfile.cc 1 Sep 2005 08:34:39 -0000 1.6 --- dnetfile.cc 5 Jan 2006 19:24:13 -0000 1.7 *************** *** 46,49 **** --- 46,50 ---- verbose = verbosity; lasterror = NULL; + protection = NULL; strcpy(fname, n); strcpy(name, n); Index: dnetfile_dap.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dncopy/dnetfile_dap.cc,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** dnetfile_dap.cc 5 Jan 2006 18:03:18 -0000 1.9 --- dnetfile_dap.cc 5 Jan 2006 19:24:13 -0000 1.10 *************** *** 349,353 **** dap_protect_message prot; if (prot.set_protection(protection) == -1) ! fprintf(stderr, "Error in protection string - not sent\n"); else prot.write(conn); --- 349,353 ---- dap_protect_message prot; if (prot.set_protection(protection) == -1) ! fprintf(stderr, "Error in protection string '%s' - not sent\n", protection); else prot.write(conn); |
From: Patrick C. <pa...@us...> - 2006-01-05 18:03:27
|
Update of /cvsroot/linux-decnet/dnprogs/dncopy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17057 Modified Files: dnetfile_dap.cc Log Message: Only set RRL if we were asked to Index: dnetfile_dap.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dncopy/dnetfile_dap.cc,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** dnetfile_dap.cc 1 Sep 2005 08:34:39 -0000 1.8 --- dnetfile_dap.cc 5 Jan 2006 18:03:18 -0000 1.9 *************** *** 223,229 **** ctl.set_ctlfunc(dap_control_message::PUT); } ! else { ! ctl.set_rop_bit(dap_control_message::RB$RRL); } return !ctl.write(conn); --- 223,229 ---- ctl.set_ctlfunc(dap_control_message::PUT); } ! if (user_flags) { ! ctl.set_rop_bit(dap_control_message::RB$RRL); } return !ctl.write(conn); |
From: Patrick C. <pa...@us...> - 2006-01-03 08:34:03
|
Update of /cvsroot/linux-decnet/dnprogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11147 Modified Files: excludes-dist Log Message: Don't exclude libvaxdata Index: excludes-dist =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/excludes-dist,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** excludes-dist 24 Sep 2003 15:53:43 -0000 1.5 --- excludes-dist 3 Jan 2006 08:33:55 -0000 1.6 *************** *** 15,20 **** */debian-changelog */LOG* ! *lib*so* ! *lib*a */fal/fal */fal/*auto_types* --- 15,20 ---- */debian-changelog */LOG* ! *lib*.so* ! *lib*.a */fal/fal */fal/*auto_types* |
From: Patrick C. <pa...@us...> - 2005-11-15 10:12:42
|
Update of /cvsroot/linux-decnet/dnprogs/dnlogin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32599 Modified Files: tty.c Log Message: On;y echo terminator if echo AND echo_terminator are set Index: tty.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnlogin/tty.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** tty.c 27 Oct 2005 13:31:13 -0000 1.20 --- tty.c 15 Nov 2005 10:12:34 -0000 1.21 *************** *** 382,386 **** if (!esc_len && is_terminator(buf[i])) { ! if (echo_terminator) { tty_write(&buf[i], 1); --- 382,386 ---- if (!esc_len && is_terminator(buf[i])) { ! if (echo && echo_terminator) { tty_write(&buf[i], 1); |
From: Patrick C. <pa...@us...> - 2005-11-04 14:10:06
|
Update of /cvsroot/linux-decnet/dnprogs/phone In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2252 Modified Files: phone_gtk.c Log Message: Get rid of spurious log message Index: phone_gtk.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/phone/phone_gtk.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** phone_gtk.c 19 Jun 2001 10:49:18 -0000 1.2 --- phone_gtk.c 4 Nov 2005 14:09:57 -0000 1.3 *************** *** 360,366 **** char title[255]; - fprintf(stderr, "draw_window_dec: win:%d, held:%d\n", - win, userinfo[win].held); - strcpy(title, userinfo[win].name); if (userinfo[win].held) --- 360,363 ---- |