• TICKIT and filenames

    From Dumas Walker@VERT/CAPCITY2 to All on Saturday, January 11, 2020 09:34:43
    I am running synchronet on a linux machine so, of course, file names are case sensitive. Is there a way to get TICKIT (or a handler script) that will ignore the file name case and replace the file (and distribute it) regardless of whether it is FOOBAR.ZIP or foobar.zip (or foobar.ZIP, etc.)?

    I have been getting TICs from a non-linux hub. The OS they are running apparently allows for lower case file names but treats them the same as upper case. So, I will get a TIC with an upper-case name inside the TIC but the file is actually in lower case. AS a result, TICKIT does what you would expect. It copies the new lower-case file into the directory, leaves the upper-case file in
    place, and then distributes the (old) upper case file.

    I would expect a CRC failure but apparently they must match as one of my downlinks has reported that his synchronet system is also processing the upper- case file as if it was the correct one and not old.

    Thanks!

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Gamgee@VERT/PALANT to Dumas Walker on Saturday, January 11, 2020 14:59:00
    Dumas Walker wrote to All <=-

    I am running synchronet on a linux machine so, of course, file
    names are case sensitive. Is there a way to get TICKIT (or a
    handler script) that will ignore the file name case and replace
    the file (and distribute it) regardless of whether it is
    FOOBAR.ZIP or foobar.zip (or foobar.ZIP, etc.)?

    I have been getting TICs from a non-linux hub. The OS they are
    running apparently allows for lower case file names but treats
    them the same as upper case. So, I will get a TIC with an
    upper-case name inside the TIC but the file is actually in lower
    case. AS a result, TICKIT does what you would expect. It copies
    the new lower-case file into the directory, leaves the upper-case
    file in
    place, and then distributes the (old) upper case file.

    I would expect a CRC failure but apparently they must match as
    one of my downlinks has reported that his synchronet system is
    also processing the upper- case file as if it was the correct one
    and not old.

    Maybe your upstream link/hub (or whoever is originating the TIC)
    could add two "Replace" lines in the TIC:

    One says "Replace FOOBAR.ZIP" and the other says "Replace
    foobar.zip"...?

    Might work.



    ... AAcckk!! II''mm iinn hhaallff dduupplleexx
    --- MultiMail/Linux v0.52
    þ Synchronet þ Palantir BBS * palantirbbs.ddns.net * Pensacola, FL
  • From Digital Man@VERT to Dumas Walker on Saturday, January 11, 2020 14:15:58
    Re: TICKIT and filenames
    By: Dumas Walker to All on Sat Jan 11 2020 09:34 am

    I am running synchronet on a linux machine so, of course, file names are case sensitive. Is there a way to get TICKIT (or a handler script) that will ignore the file name case and replace the file (and distribute it) regardless of whether it is FOOBAR.ZIP or foobar.zip (or foobar.ZIP, etc.)?

    I have been getting TICs from a non-linux hub. The OS they are running apparently allows for lower case file names but treats them the same as upper case. So, I will get a TIC with an upper-case name inside the TIC but the file is actually in lower case. AS a result, TICKIT does what you would expect. It copies the new lower-case file into the directory, leaves the upper-case file in
    place, and then distributes the (old) upper case file.

    I'm curious: how did you end up with the upper case file to begin with (if your hub is always sending you lowercase, regardless of what the .tic file says)?

    digital man

    This Is Spinal Tap quote #42:
    What day the Lord created Spinal Tap and couldn't he have rested on that day? Norco, CA WX: 60.8øF, 60.0% humidity, 2 mph ESE wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Dumas Walker on Saturday, January 11, 2020 14:34:01
    Re: TICKIT and filenames
    By: Dumas Walker to All on Sat Jan 11 2020 09:34 am

    I am running synchronet on a linux machine so, of course, file names are case sensitive. Is there a way to get TICKIT (or a handler script) that will ignore the file name case and replace the file (and distribute it) regardless of whether it is FOOBAR.ZIP or foobar.zip (or foobar.ZIP, etc.)?

    I have been getting TICs from a non-linux hub. The OS they are running apparently allows for lower case file names but treats them the same as upper case. So, I will get a TIC with an upper-case name inside the TIC but the file is actually in lower case. AS a result, TICKIT does what you would expect. It copies the new lower-case file into the directory, leaves the upper-case file in
    place, and then distributes the (old) upper case file.

    Also, do the .tic files you're receiving contain an "Lfile" line or a "Fullname" line? These aren't being used explicitly in tickit.js, but might be helpful if they were (and present in the received .tic's).

    You can try this experimental change to exec/tickit.js:

    function do_move(path, tic) {
    var dst = path+tic.file;
    var actual = file_getcase(dst);
    if (actual) {
    file_remove(actual);
    dst = actual;
    }
    if (rename_or_move(tic.full_path, dst))
    tic.full_path = dst;
    else {
    log(LOG_ERROR, "Cannot move '"+tic.full_path+"' to '"+dst+"'!");
    return false;
    }
    return true;
    }


    It'll look to see if the file name mentioned in the .tic file already exists with *any* case, and overwrite that file. Since I don't use/run tickit.js myself, I can't easily test this modification, but you're welcome to and let me know if it works for you.

    digital man

    Synchronet "Real Fact" #16:
    Synchronet first supported FidoNet networking (with SBBSFIDO) in 1992.
    Norco, CA WX: 60.7øF, 60.0% humidity, 0 mph S wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nelgin@VERT/EOTLBBS to Digital Man on Saturday, January 11, 2020 17:45:11
    Digital wrote:
    Re: TICKIT and filenames
    By: Dumas Walker to All on Sat Jan 11 2020 09:34 am

    I am running synchronet on a linux machine so, of course, file names are
    case sensitive. Is there a way to get TICKIT (or a handler script) that
    will ignore the file name case and replace the file (and distribute it)
    regardless of whether it is FOOBAR.ZIP or foobar.zip (or foobar.ZIP, etc.)?

    I have been getting TICs from a non-linux hub. The OS they are running
    apparently allows for lower case file names but treats them the same as
    upper case. So, I will get a TIC with an upper-case name inside the TIC but
    the file is actually in lower case. AS a result, TICKIT does what you would
    expect. It copies the new lower-case file into the directory, leaves the
    upper-case file in
    place, and then distributes the (old) upper case file.

    I'm curious: how did you end up with the upper case file to begin with (if your hub is always sending you lowercase, regardless of what the .tic file says)?

    digital man


    Maybe someone can add an IgnoreCase option to tickit.js though it could be dangarous. Foobar.zip could easily be a different file from FOOBAR.ZIP on a Linux server. I personally feel, given that all DOS file names were in uppercase, using 8.3 uppercase filenames throughout would eliviate many of these issues. Of course, now we have long filenames in windows, case
    sensitive v non case sensitive file systems and the like. At least with
    uppcase 8.3 we have a convention that works for everyone.

    ---
    þ Synchronet þ End Of The Line BBS - endofthelinebbs.com
  • From Rampage@VERT/SESTAR to Digital Man on Sunday, January 12, 2020 08:44:59
    Re: TICKIT and filenames
    By: Digital Man to Dumas Walker on Sat Jan 11 2020 14:15:58


    I'm curious: how did you end up with the upper case file to begin
    with (if your hub is always sending you lowercase, regardless of
    what the .tic file says)?

    possibly the originator hatched upper case files and at some point switched to lower case... it could be a human thing (eg typing all lower case) or software (eg detecting upper case before lower case)...

    also there's the problem of files being hatched into the FDNs without the Replaces keyword when they are meant to replace existing files... couple this with operators' options to maintain historical files and ignore the Replaces keyword and it is possible for systems to get confused... esppecially when some systems treat upper and lower case file names the same but keep them separated in the file system... i can only imagine the troubles those systems can see with CaMeL case file names and the variations they may have...


    )\/(ark

    ---
    þ Synchronet þ The SouthEast Star Mail HUB - SESTAR
  • From Dumas Walker@VERT/CAPCITY2 to DIGITAL MAN on Sunday, January 12, 2020 10:35:00
    I'm curious: how did you end up with the upper case file to begin with (if your
    hub is always sending you lowercase, regardless of what the .tic file says)?

    Apparently, as recent as August of 2019, the file names were received in upper case.


    * SLMR 2.1a * Remind me again how lucky I am to work here

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Dumas Walker@VERT/CAPCITY2 to DIGITAL MAN on Sunday, January 12, 2020 10:36:00
    It'll look to see if the file name mentioned in the .tic file already exists wi
    h *any* case, and overwrite that file. Since I don't use/run tickit.js myself,
    can't easily test this modification, but you're welcome to and let me know if
    t works for you.

    Thanks, I think the hub in question is making a change so that the
    filenames are always in caps. This will be handy if that does not work.

    Thanks!


    * SLMR 2.1a * Federal Law prohibits the removal of this tagline

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP