Skip to content
Snippets Groups Projects
  1. Jan 12, 2019
    • rswindell's avatar
      Cruft removal: JavaScript Support and Identity Lookup checkboxes. · 18bd0a4e
      rswindell authored
      Oddly, the Identity Lookup checkbox was obscurring (hiding) the Hostname
      Lookup checkbox, so that becomes visible/available again.
      18bd0a4e
    • rswindell's avatar
      Removed the NO_JAVASCRIPT option from the list of supported [bbs] Options · 37681ff1
      rswindell authored
      (not practical to disable JavaScript for the terminal server any longer)
      and added the NO_SPY_SOCKETS option.
      37681ff1
    • rswindell's avatar
      Added the new [unix] section (empty) · 460ed8da
      rswindell authored
      460ed8da
    • rswindell's avatar
      For Unix-domain sockets (e.g. localspy sockets on *nix), use the [unix] · 6d7d9563
      rswindell authored
      section of the sockopts.ini (if there is one) rather than the [tcp] or
      [udp] sections. This resolves the errors:
            term xxxx !ERROR 95 setting socket option (TCP_NODELAY, 1) to 1
      which started appearing after the TCP_NODELAY option was added to the
      [tcp] section.
      6d7d9563
    • rswindell's avatar
      Allow a hostname to be specified on the command-line without also specifying · 875610d9
      rswindell authored
      a target port number.
      The port and hostname arguments can now be supplied in any order.
      Added debug-level log output with the host/port we're trying to connect to.
      Include the socket error value in the failure to connect log message.
      875610d9
    • rswindell's avatar
      Bug-fix: Socket.connect() would return true (success) even though a · 7685c9d7
      rswindell authored
      TCP connection actually failed. This bug only appeared to affect *nix
      systems. This bug appears to be very old, introduced in rev 1.74 of
      this file (Mar-2003) by yours truly.
      From the Linux 'connect' man page:
      EINPROGRESS
                    The  socket  is  nonblocking  and the connection cannot be i
                    completed immediately.  It is possible to select(2) or poll(2)
                    for completion by selecting the socket for writing.  After
                    select(2) indicates writability, use getsockopt(2) to read the
                    SO_ERROR option at level SOL_SOCKET to determine whether
                    connect() completed successfully (SO_ERROR is zero) or
                    unsuccessfully (SO_ERROR is one of the usual error codes listed
                    here, explaining the reason for the failure).
      
      We weren't doing the 'getsockopt(SO_ERROR)' part.
      7685c9d7
    • rswindell's avatar
      Cosmetic change only: · 8d649b6c
      rswindell authored
      Wrap all read_*_cfg() and write_*_cfg() calls with simple functions that
      display popup messages that the Reading or Writing is being performed.
      There was already copy/pasta everywhere for the Reading ... cnf files, but
      nothing for writing.
      8d649b6c
    • rswindell's avatar
      Added getdirname(): returns the filename or lastdirectory portion of a full · bb721a40
      rswindell authored
      pathname (directories must end in a '/'). Unlike getfname() which returns an
      empty string if passed a path ending in a '/'.
      Useful with glob(.., GLOB_MARK).
      bb721a40
    • rswindell's avatar
      Fix some new issues due to use of GLOB_MARK: · c683fd1d
      rswindell authored
      getfname() on a path that ends in a slash, returns an empty string pointer.
      Fixed-up some logging output around listing creations.
      c683fd1d
    • rswindell's avatar
      Optimized all directory listings and index generation: · 6906257d
      rswindell authored
      - use GLOB_MARK to eliminate calls to isdir() in loops
      - use stat() rather than calls to flength() and fdate()
      - don't call getfiledat() if getfileixb() failed
      - profiling info-level log msgs added for index/listing generation, e.g.
        "detailed listing (3459 bytes) of /main/SBBS (45 files) created in 2 seconds"
      
      Fixed bug with indexes generated for directories with the
      "Access Files Not In Database" option enabled, files not in database were
      excluded from the generated index (e.g. 00index, 00index.html).
      6906257d
    • rswindell's avatar
      Optimized getfiledat(): · 09f5e87e
      rswindell authored
      rather than calling both flength() and fdate() (which both call stat()), just
      call stat() once and use the result for both file size and date/time.
      09f5e87e
    • rswindell's avatar
      Optimized fdate(), fcdate(), flength(), fnameexist() functions: · ec4b5ab1
      rswindell authored
      There's no reason to call access() before stat() since stat() will fail
      (return -1) if the file does not exist.
      ec4b5ab1
    • rswindell's avatar
      Modernization of this script (e.g. "use strict", require(), load(), etc.) · 477b2cfd
      rswindell authored
      Loads child scripts (finger.js, sbbsimsg.js) quicker.
      Note: irc.js can't be load()ed from here because it calls exit().
      Now using appropriate strings from text.dat (R_Chat, ON, OFF).
      Added modopts.ini [chat_sec] irc option (disable IRC access by setting to false).
      477b2cfd
    • rswindell's avatar
      Using a much more reliable method of saving/restoring the initial · caa3e18e
      rswindell authored
      console.ctrlkey_passthru state.
      As it was, if the irc.js abended, many ctrl-keys (e.g. ^C) would not work
      after exiting. A lot of scripts that much with the console.ctrlkey_passthru
      have this/similar issue and this is a simple but very reliable fix.
      caa3e18e
    • rswindell's avatar
      Use the new load/finger_lib.js · c08661e2
      rswindell authored
      c08661e2
    • rswindell's avatar
      A library for finger or systat/active-user client requests · c301721a
      rswindell authored
      (mostly migrated from exec/finger.js).
      c301721a
    • rswindell's avatar
      TickIT patch supplied by Mark Lewis: · f056efcc
      rswindell authored
      tickit.js version pulled from $ID string in .js file.
      tickit version used in Created by line.
      tickit version used in Path line.
      utc time stamp of processing used in Path line per FTS-5006.001.
      per area uploader.
      address selection:
         per area aka matching in From and Path lines.
         per area source address in From and Path lines.
         global aka matching in From and Path lines (original addressing method).
         global source address in From and Path lines.
         main FTN address from system.fido_addr_list (preferred but last in line with
      the above overrides).
      can use domains on linked systems' addresses in sbbsecho.ini again.
      can use domains on any address in tickit.ini.
      domains are NOT currently written to the generated TIC files to avoid creating
      possible problems for other TIC processors.
      force replace is available globally and per area in the ini and not only the
      command line.
      f056efcc
  2. Jan 11, 2019
  3. Jan 10, 2019
Loading