• how to read husky hpt squid base in code

    From Ruslan Suleimanov@2:467/888 to All on Thu Sep 29 11:33:43 2022
    Hi, All!




    Give me pls more info how i can read/write in husky hpt squid base in C/C++ or Perl ?

    Maybe some api lib ?


    Thanks! :)






    WBR Ruslan Suleimanov


    ... аши мысли, определяют наше будущее.
    --- rsync://ip.fido.odessa.ua/FIDO/
    * Origin: /RS/FIDO Druzi 199x fido.odessa.ua/ (2:467/888)
  • From Kai Richter@2:240/77 to Ruslan Suleimanov on Thu Sep 29 16:24:08 2022
    Hello Ruslan!

    29 Sep 22, Ruslan Suleimanov wrote to All:

    Give me pls more info how i can read/write in husky hpt squid base in C/C++ or Perl ?

    That's simple, hpt does not have squid support nor http protocols. It's based on the fidonet technology standard and thus incompatible to squid.

    Regards

    Kai

    --- GoldED+/LNX 1.1.4.7
    * Origin: Monobox (2:240/77)
  • From Nil Alexandrov@2:5015/46 to Kai Richter on Thu Sep 29 19:00:04 2022
    Hello, Kai!

    Thursday September 29 2022 16:24, from Kai Richter -> Ruslan Suleimanov:

    Give me pls more info how i can read/write in husky hpt squid
    base in C/C++ or Perl ?

    Husky project has a C library called [SMAPI](https://github.com/huskyproject/smapi) for Fidonet message base manipulation and it includes support for OPUS/MSG, Jam and Squish database formats. Unfortunately, there is no good documentation for the API, but the Pascal wrapper has the most documentation https://github.com/huskyproject/smapi/blob/master/src/smapi.pas

    There are a couple of (abandoned) Perl libraries you can check, https://metacpan.org/dist/FTN-Database and for pkt manipulation https://metacpan.org/dist/FTN-Pkt https://metacpan.org/pod/FTN::Packet but nothing ready-to-use to read Squish database format.

    That's simple, hpt does not have squid support nor http protocols.

    I am pretty sure he meant Squish and not Squid.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Stas Mishchenkov@2:460/5858 to Nil Alexandrov on Fri Sep 30 09:54:48 2022
    Hi Nil!

    Thursday September 29 2022 19:00, you wrote to Kai Richter:

    Give me pls more info how i can read/write in husky hpt squid
    base in C/C++ or Perl ?

    There are a couple of (abandoned) Perl libraries you can check, https://metacpan.org/dist/FTN-Database and for pkt manipulation https://metacpan.org/dist/FTN-Pkt https://metacpan.org/pod/FTN::Packet but nothing ready-to-use to read Squish database format.

    However, there is a perl library for the JAM base. https://metacpan.org/pod/FTN::JAM

    And https://sourceforge.net/p/jamlib/wiki/Home/ "JAMLIB is a subroutine library written in C++ for manipulating such messagebases."

    That's why I prefer JAM. ;)

    Have a nice night.
    Stas Mishchenkov.

    --- Have You daily sexual life? Hide it proper from Your wife! ;)
    * Origin: Lame Users Breeding. Simferopol, Crimea. (2:460/5858)
  • From Nil Alexandrov@2:5015/46 to Stas Mishchenkov on Fri Sep 30 18:47:34 2022
    Hello, Stas!

    Friday September 30 2022 09:54, from Stas Mishchenkov -> Nil Alexandrov:

    And https://sourceforge.net/p/jamlib/wiki/Home/ "JAMLIB is a
    subroutine library written in C++ for manipulating such messagebases."

    Unfortunately, the jamlib is broken and not supported. There is a project [jamnntpd](https://github.com/ftnapps/jamnntpd) which originally was based on the jamlib but the JAM bases became corrupted on 64-bit platforms, though you can always compile with -m32 and it works. Jamnntp project did not fix the original jamlib but moved on to the supported [Husky SMAPI library](https://github.com/huskyproject/smapi). I can tell you that jamlib has also broken support for endianness, it basically will not work correctly on big-endian platforms.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Oli@2:280/464.47 to Nil Alexandrov on Fri Sep 30 19:49:44 2022
    Nil wrote (2022-09-30):

    Unfortunately, the jamlib is broken and not supported. There is a project [jamnntpd](https://github.com/ftnapps/jamnntpd) which originally was
    based on the jamlib but the JAM bases became corrupted on 64-bit platforms, though you can always compile with -m32 and it works.

    Crashmail and JamNTTPd is available for 64-bit platforms in Debian. I'm pretty sure Crashmail works fine on 64-bit. So maybe it's best to use jamlib from Crashmail.

    Jamnntp project did not fix the original jamlib but moved on to the supported
    [Husky SMAPI library](https://github.com/huskyproject/smapi).

    JamNTTPd still uses jamlib. There is a fork called SmapiNNTPd, but it has been abandoned.

    I can tell
    you that jamlib has also broken support for endianness, it basically will not work correctly on big-endian platforms.

    Are you sure? From https://github.com/larsks/jamlib/ :

    ---
    This is JamLIB 1.4.7, exported from the CVS repository on Sourceforge on 2015-10-20.
    ---
    [...]
    These are the modifications done by Johan Billing:
    [...]
    * JAMLIB been rewritten so that it no longer reads or writes structs
    directly from or to disk. This makes JAMLIB more portable and ensures
    that the Intel byte-order is used on all platforms.

    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (2:280/464.47)
  • From Nil Alexandrov@2:5015/46 to Oli on Fri Sep 30 22:46:38 2022
    Hello, Oli!

    Friday September 30 2022 19:49, from Oli -> Nil Alexandrov:

    JamNTTPd still uses jamlib. There is a fork called SmapiNNTPd, but it
    has been abandoned.

    Correct. Both JamNTTPd and SmapiNNTPd work fine with 32-bit Linux distro, though JamNTTPd out of the git HEAD repo will corrupt your JAM database when run in 64-bit environment, try it out yourself. In this sense, I would say that SmapiNNTPd is sort of less abandoned than the original one.

    you that jamlib has also broken support for endianness, it
    basically will not work correctly on big-endian platforms.
    Are you sure? From https://github.com/larsks/jamlib/ :
    * JAMLIB been rewritten so that it no longer reads or writes structs
    directly from or to disk. This makes JAMLIB more portable and
    ensures
    that the Intel byte-order is used on all platforms.

    Ah yeah, my bad. The endianness has been fixed a long time ago. I just happened to look at some really old jamlib source.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Kai Richter@2:240/77 to Nil Alexandrov on Sat Oct 1 03:15:20 2022
    Hello Nil!

    29 Sep 22, Nil Alexandrov wrote to Kai Richter:

    Give me pls more info how i can read/write in husky hpt squid
    base in C/C++ or Perl ?

    Husky project has a C library called [SMAPI](https://github.com/huskyproject/smapi) for Fidonet message
    base manipulation

    That's simple, hpt does not have squid support nor http
    protocols.

    I am pretty sure he meant Squish and not Squid.

    That's what i'm afraid of. It's not that difficult to find the API in the husky sources.

    Regards

    Kai

    --- GoldED+/LNX 1.1.4.7
    * Origin: Monobox (2:240/77)
  • From Ruslan Suleimanov@2:467/888 to Kai Richter on Thu Oct 6 16:37:14 2022
    Hi, Kai!



    Ответ на сообщение Kai Richter (2:240/77) к Ruslan Suleimanov, написанное 29 сен 22 в 16:24:



    Hello Ruslan!

    29 Sep 22, Ruslan Suleimanov wrote to All:

    Give me pls more info how i can read/write in husky hpt squid base in
    C/C++ or Perl ?

    That's simple, hpt does not have squid support nor http protocols. It's based on the fidonet technology standard and thus incompatible to squid.

    i find smapi that can operations with squish data base. https://github.com/huskyproject/smapi

    but no info and no manuals, how use it..





    WBR Ruslan Suleimanov


    ... Идите домой. Водки нет! Go home, no vodka!
    --- rsync://ip.fido.odessa.ua/FIDO/
    * Origin: /RS/FIDO Druzi 199x fido.odessa.ua/ (2:467/888)
  • From Kai Richter@2:240/77 to Ruslan Suleimanov on Thu Oct 6 16:58:54 2022
    Hello Ruslan!

    06 Oct 22, Ruslan Suleimanov wrote to Kai Richter:

    i find smapi that can operations with squish data base. https://github.com/huskyproject/smapi

    but no info and no manuals, how use it..

    I have heard that the source code does tell what it does.

    Sad thing is: I can't read it.
    No, i can read it but i don't understand it.

    From the developer point of view there was no reason to write a manual so far.

    Regards

    Kai

    --- GoldED+/LNX 1.1.4.7
    * Origin: Monobox (2:240/77)
  • From Nil Alexandrov@2:5015/46 to Kai Richter on Thu Oct 6 19:33:12 2022
    Hello, Kai!

    Thursday October 06 2022 16:58, from Kai Richter -> Ruslan Suleimanov:

    i find smapi that can operations with squish data base.
    https://github.com/huskyproject/smapi
    but no info and no manuals, how use it..

    As I said earlier, there is no good documentation for the SMAPI API, but the Pascal wrapper has the most documentation https://github.com/huskyproject/smapi/blob/master/src/smapi.pa

    I have heard that the source code does tell what it does.

    https://yarchive.net/comp/linux/documentation.html
    From: Linus Torvalds <torvalds@transmeta.com>
    Subject: Re: kernel support for non-English user messages

    Some people care about documentation, some people don't. That's a fact,
    and spouting platitudes about "improving their work" just doesn't
    _matter_. The whole open source idea is that people do what they care
    about and what they are good at, and exactly because they aren't forced
    to deal with issues they don't have a heart for they take more pride and interest in the stuff they _do_ do.

    Personally, I don't write documentation. I don't much even write comments
    in my code. My personal feeling is that as long as functions are small
    and readable (and logical), and global variables have good names, that's
    all I need to do. Others - who do care about comments and docs - can do
    that part.

    And you know what? That _lack_ of comments and documentation improves my work. Not because documentation is bad, but because I DO NOT CARE. So I concentrate on the stuff I do care about.

    So no, people are _NOT_ "wasting an opportunity".
    Linus

    Sad thing is: I can't read it.
    No, i can read it but i don't understand it.

    'Documentation is like sex. When it's good, it's really, really good and when it's bad it's better than nothing.'
    -Linus Torvalds

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Michael Dukelsky@2:5020/1042 to Ruslan Suleimanov on Thu Oct 6 23:03:46 2022
    Hello Ruslan,

    Thursday October 06 2022, Ruslan Suleimanov wrote to Kai Richter:

    Give me pls more info how i can read/write in husky hpt squid
    base in C/C++ or Perl ?

    That's simple, hpt does not have squid support nor http
    protocols. It's based on the fidonet technology standard and thus
    incompatible to squid.

    i find smapi that can operations with squish data base. https://github.com/huskyproject/smapi

    but no info and no manuals, how use it..

    If you need a description of the Squish message API, you may find it here: http://ambrosia60.selfhost.eu/structs/sqdev.htm

    You may also find the file SquishMsgAPI.txt in your inbound.
    But be warned that the real Husky code may differ.

    Michael

    ... node (at) f1042 (dot) ru
    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: Moscow, Russia (2:5020/1042)
  • From Ruslan Suleimanov@2:467/888 to Michael Dukelsky on Fri Oct 7 00:04:16 2022
    Hello, Michael!



    Ответ на сообщение Michael Dukelsky (2:5020/1042) к Ruslan Suleimanov, написанное 06 окт 22 в 23:03:


    Hello Ruslan,

    Thursday October 06 2022, Ruslan Suleimanov wrote to Kai Richter:

    Give me pls more info how i can read/write in husky hpt squid
    base in C/C++ or Perl ?

    That's simple, hpt does not have squid support nor http
    protocols. It's based on the fidonet technology standard and thus
    incompatible to squid.

    i find smapi that can operations with squish data base.
    https://github.com/huskyproject/smapi

    but no info and no manuals, how use it..

    If you need a description of the Squish message API, you may find it here: http://ambrosia60.selfhost.eu/structs/sqdev.htm
    You may also find the file SquishMsgAPI.txt in your inbound.
    But be warned that the real Husky code may differ.


    Super ! It's what I need. :) Thx.





    WBR Ruslan Suleimanov


    ... Идите домой. Водки нет! Go home, no vodka!
    --- rsync://ip.fido.odessa.ua/FIDO/
    * Origin: /RS/FIDO Druzi 199x fido.odessa.ua/ (2:467/888)