]> Kevux Git Server - kevux-tools/log
kevux-tools
9 months agoProgress: Pull in recent changes and practices from the latest 0.7 development branch.
Kevin Day [Thu, 15 Feb 2024 04:32:16 +0000 (22:32 -0600)]
Progress: Pull in recent changes and practices from the latest 0.7 development branch.

9 months agoProgress: Pull in recent changes from the latest 0.7 development branch.
Kevin Day [Tue, 6 Feb 2024 23:20:51 +0000 (17:20 -0600)]
Progress: Pull in recent changes from the latest 0.7 development branch.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 17 Jan 2024 00:01:39 +0000 (18:01 -0600)]
Progress: Further work in TacocaT.

This strongly moves in the direction of setting up sending and receiving the different packets.
This includes handling of multiple packet parts.

None of this is ready yet, but progress is being made.
There is currently a strong focus on getting the FSS Payload processing code wrapped up, working, and tested.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Sun, 7 Jan 2024 23:44:53 +0000 (17:44 -0600)]
Progress: Further work in TacocaT.

Start making room for handling the additional package parts, error packets, and all other packets.

Clean up some of the documentation and add tacocat package specific documentation.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Fri, 5 Jan 2024 02:32:31 +0000 (20:32 -0600)]
Progress: Further work in TacocaT.

Implements the processing of the Header.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Thu, 4 Jan 2024 02:08:17 +0000 (20:08 -0600)]
Progress: Further work in TacocaT.

Begin processing header.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Tue, 2 Jan 2024 16:03:21 +0000 (10:03 -0600)]
Progress: Further work in TacocaT.

The payload is now the only thing that gets written.

The next things to do are to:
- Process the headers and possibly the signatures.
- Go through a lot of the error cases and make sure they are handled.
- Address all of the todo and fixme comments.
- Consider supporting encryption and including optional third-party libraries to perform such tasks.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Sun, 31 Dec 2023 03:40:55 +0000 (21:40 -0600)]
Progress: Further work in TacocaT.

I previously just jammed on a random seed based on time as a quick short term solution.

I created an f_random FLL project to provide some basic random entropy processing code.

This change set focuses on utilizing these to get set the random entropy.

The setup of the seed is set to non-blocking with a single delayed retry if blocked.
On failure, this still falls back to the time() based setup.
The fallback also must be cast t an unsigned int rather than a long.

10 months agoProgress: Further work in TacocaT.
Kevin Day [Thu, 28 Dec 2023 05:10:21 +0000 (23:10 -0600)]
Progress: Further work in TacocaT.

I have confirmed that the send and receive to/from tacocat works.
This does send and receive with the current code but the written data writes the entire packet rather than just the payload.
This behavior will change.

This begins changing the design to make the receive consistent with some design differences from the send.
The received packet needs to be processed using the appropriate FSS functions.
Much of this is commented out next to where the work needs to be done.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Tue, 19 Dec 2023 05:20:31 +0000 (23:20 -0600)]
Progress: Further work in TacocaT.

Build the entire packet now in one buffer.

Fix some mistakes in the packet too-small/too-large status codes.

Change the send packets are built.

Setup the random seed and add a proof of concept salt header.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Mon, 11 Dec 2023 06:32:38 +0000 (00:32 -0600)]
Progress: Further work in TacocaT.

The F_pipe is being returned on socket write calls because the socket.address.inet4.sin_family (and probably the socket.address.inet4.sin_family) is not being set.

The kt_tacocat_socket_flag_send_connect_e is not needed and is now removed.

Use f_socket_close_fast_e in f_socket_disconnect().

Pass f_socket_flag_signal_not_e as a flag to f_socket_write_stream() so that a signal is not received if f_socket_write_stream() returns F_pipe.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Sat, 9 Dec 2023 03:58:16 +0000 (21:58 -0600)]
Progress: Further work in TacocaT.

Get the current state of the project in sync with the recent f_socket_connect() changes.

Currently, the send is failing on f_socket_write_stream() due to code 414 (F_pipe).
This is the next point of investigation.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Thu, 7 Dec 2023 03:08:49 +0000 (21:08 -0600)]
Progress: Further work in TacocaT.

I need to resume the send logic but first I needed to make these minor fixes.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Mon, 4 Dec 2023 01:48:51 +0000 (19:48 -0600)]
Progress: Further work in TacocaT.

While working on testing, cleaning up, and finish the code I stopped to make changes to the networking code.
This is the random state the code ended up being in while I adjusted focus.

I will have to resume here and figure out what I was last doing before my adjusted focus happened.

11 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 29 Nov 2023 04:23:41 +0000 (22:23 -0600)]
Progress: Further work in TacocaT.

The socket id and id_data descriptors need to be initialized to -1 and not 0.
Make sure they are setup after allocation and after processing (or after disconnect).

Provide more verbose error reporting that reports the particular block step the send fails on.
The receive is not yet updated to do the same but in the future it should be updated to do so.

12 months agoProgress: Further work in TacocaT.
Kevin Day [Thu, 16 Nov 2023 02:28:46 +0000 (20:28 -0600)]
Progress: Further work in TacocaT.

The send f_socket_write_stream() is failing.
Probably due to some incomplete step.

Take advantage of this and implement the retry logic and error handling.

12 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 15 Nov 2023 03:49:56 +0000 (21:49 -0600)]
Progress: Further work in TacocaT.

Finish updating the primary structure in kt_tacocat_send_process().
The next thing to do is to test and figure out what is incomplete or broken.
After that, the next thing to do is to address the existing todo's and perform appropriate clean ups.

12 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 15 Nov 2023 00:02:30 +0000 (18:02 -0600)]
Progress: Further work in TacocaT.

12 months agoProgress: Further work in TacocaT.
Kevin Day [Sat, 11 Nov 2023 05:38:09 +0000 (23:38 -0600)]
Progress: Further work in TacocaT.

12 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 8 Nov 2023 03:12:09 +0000 (21:12 -0600)]
Progress: Further work in TacocaT.

14 months agoProgress: Further work in TacocaT, adding initial code regarding sending.
Kevin Day [Thu, 14 Sep 2023 04:22:49 +0000 (23:22 -0500)]
Progress: Further work in TacocaT, adding initial code regarding sending.

14 months agoProgress: Further work in TacocaT.
Kevin Day [Mon, 11 Sep 2023 02:51:55 +0000 (21:51 -0500)]
Progress: Further work in TacocaT.

Minor fixes, removing some todos and fixmes.
Add some message printing.

14 months agoProgress: Further work in TacocaT and in particular update kt_tacocat_socket_set_t...
Kevin Day [Wed, 6 Sep 2023 05:11:09 +0000 (00:11 -0500)]
Progress: Further work in TacocaT and in particular update kt_tacocat_socket_set_t structure.

Restructure the kt_tacocat_socket_set_t to reduce the number of arrays.
I originally had the structure for f_polls_t.
I then got lazy and kept using the same array structure for everything.
Fix the array structure of kt_tacocat_socket_set_t and provide kt_tacocat_socket_sets_t.

The buffer string intended for a generic cache is move into the kt_tacocat_cache_t.
I am not sure if this is even being used and so this buffer string cache may be removed in the future if I fail to find a use for it.

Begin setting up the custom file name variable to resolve the fixme.
Also make preparations for only opening the file on poll and read operations.
Then close the file when done.
This keeps files from being held open for no reason.

14 months agoProgress: Further work in TacocaT, getting the "receive" working and writing to a...
Kevin Day [Tue, 5 Sep 2023 02:25:56 +0000 (21:25 -0500)]
Progress: Further work in TacocaT, getting the "receive" working and writing to a file.

This gets the receive mostly working.
There may be a few fixme or todo comments to address.
I decided to not bother with some of the more complex handling of problems to get this program out the door.

To test this, I used the FLL-0.6 branch version of the file specifications/fss-000f.txt.
I then created the Packet header using the bash script like this:
  printf '\x00\x00\x00\x15\x78' > test.binary
  cat 0.6/specifications/fss-000f.txt >> test.binary

The resulting binary file size is 0x1578 bytes (5496 bytes) and this can be confirmed via the wc command:
  wc test.binary

I can then start the TacocaT program in a new terminal like this:
  tacocat -r 127.0.0.1:12345 test.out +V

In a different terminal, I use netcat to test (because the "send" support is not yet written).
  cat test.binary | netcat 127.0.0.1 12345

Use control-c to terminate TacocaT.

I can then confirm that the file has been created successfully via a md5sum check.
  md5sum test.out 0.6/specifications/fss-000f.txt

The checksums should match, and in my testing they do match.

14 months agoProgress: Further work in TacocaT.
Kevin Day [Sun, 3 Sep 2023 03:43:11 +0000 (22:43 -0500)]
Progress: Further work in TacocaT.

14 months agoProgress: Further work in TacocaT, with a focus on setting up the port.
Kevin Day [Sat, 2 Sep 2023 00:19:41 +0000 (19:19 -0500)]
Progress: Further work in TacocaT, with a focus on setting up the port.

The port number should now be properly configurable (needed htons()).

Print a detailed error message for invalid ports.

14 months agoProgress: Further work in TacocaT.
Kevin Day [Thu, 31 Aug 2023 04:12:54 +0000 (23:12 -0500)]
Progress: Further work in TacocaT.

Add the beginnings of some basic sanity checks.
The max buffer size is provided to prevent DOS and similar attacks by sending an infinitely large packet.

The TacocaT program is not designed for nor is it intended to be used for handling infinite streams.

14 months agoProgress: Further work in TacocaT.
Kevin Day [Wed, 30 Aug 2023 02:13:42 +0000 (21:13 -0500)]
Progress: Further work in TacocaT.

Get the existing, already implemented, TacocaT behavior working and without error.
This fixes some memory allocation mistakes (such as sending a memory address of a string, which the string is already the memory address that is needed).
Move the allocation logic to a separate function to make the code slightly cleaner.

For records purposes, I am currently compiling with the upcoming 0.6.7 (or a recent 0.7.0 dev release) of Featureless Make and the following command:
- `clear ; fake -U build/tacocat/ clean build -w /tmp/fll-0.7/ && ./install.sh -w /tmp/fll-0.7/`

14 months agoUpdate: Change data build settings loading to work with the new -U/--under Featureles...
Kevin Day [Mon, 28 Aug 2023 04:07:15 +0000 (23:07 -0500)]
Update: Change data build settings loading to work with the new -U/--under Featureless Make parameter.

This requires FLL-0.6.7 or greater for the 0.6 branch or the latest 0.7 code (or greater).

14 months agoUpdate: Synchronize with latest FLL API changes to f_string_dynamic_t and related...
Kevin Day [Mon, 28 Aug 2023 04:06:43 +0000 (23:06 -0500)]
Update: Synchronize with latest FLL API changes to f_string_dynamic_t and related for delete program.

15 months agoUpdate: Syncrhonize with latest FLL API changes to f_string_dynamic_t and related.
Kevin Day [Tue, 22 Aug 2023 04:27:32 +0000 (23:27 -0500)]
Update: Syncrhonize with latest FLL API changes to f_string_dynamic_t and related.

15 months agoUpdate: Syncrhonize with latest FLL API changes.
Kevin Day [Sat, 19 Aug 2023 04:32:42 +0000 (23:32 -0500)]
Update: Syncrhonize with latest FLL API changes.

15 months agoUpdate: Switch F_none to F_okay to be consistent with recent FLL status code changes.
Kevin Day [Fri, 18 Aug 2023 00:27:50 +0000 (19:27 -0500)]
Update: Switch F_none to F_okay to be consistent with recent FLL status code changes.

15 months agoProgress: Use the f_socket_accept() in TacocaT.
Kevin Day [Sat, 5 Aug 2023 15:42:51 +0000 (10:42 -0500)]
Progress: Use the f_socket_accept() in TacocaT.

The accept needs to be used before attempting to read from the stream.

15 months agoProgress: Further work in TacocaT.
Kevin Day [Sat, 5 Aug 2023 05:34:40 +0000 (00:34 -0500)]
Progress: Further work in TacocaT.

Continue work regarding sockets.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Sat, 15 Jul 2023 03:10:42 +0000 (22:10 -0500)]
Progress: Further work in TacocaT.

Begin working on actually processing the packet from the socket file.

16 months agoProgress: Add -I/--interval parameter to TacocaT.
Kevin Day [Fri, 14 Jul 2023 03:52:16 +0000 (22:52 -0500)]
Progress: Add -I/--interval parameter to TacocaT.

16 months agoProgress: Implement the threads for the receive and send.
Kevin Day [Thu, 13 Jul 2023 03:35:41 +0000 (22:35 -0500)]
Progress: Implement the threads for the receive and send.

This ignores the non-thread version at this time.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Tue, 11 Jul 2023 03:04:58 +0000 (22:04 -0500)]
Progress: Further work in TacocaT.

Get listen working.
Setup poll handler.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Mon, 10 Jul 2023 03:22:06 +0000 (22:22 -0500)]
Progress: Further work in TacocaT.

Create a socket set and move all associated arrays into it.
This allows for a receive and a send socket set to keep all of the associated properties together.

Move a lot of the processing functionality into its own functions and reduce some of the redundancy.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Sun, 9 Jul 2023 16:36:00 +0000 (11:36 -0500)]
Progress: Further work in TacocaT.

Of note, this changes IP address and port extraction processing logic.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Sat, 8 Jul 2023 03:40:09 +0000 (22:40 -0500)]
Progress: Further work in TacocaT.

Do more of the needed configuration.
Call the appropriate bind functions.

16 months agoProgress: Further work in TacocaT.
Kevin Day [Fri, 7 Jul 2023 03:42:12 +0000 (22:42 -0500)]
Progress: Further work in TacocaT.

Add socket and status arrays for receiving and sending.

Start calling the socket setup and tear down code.

Have the disconnect on exit disconnect cleanly unless an interrupt is called.

16 months agoProgress: Continue work regarding TacocaT.
Kevin Day [Tue, 4 Jul 2023 03:59:07 +0000 (22:59 -0500)]
Progress: Continue work regarding TacocaT.

This further removes no longer supported functionality that was not previously fully removed.

This adds the f_sockets_t in preparation for opening the sockets.

16 months agoProgress: Further work in getting TacocaT working.
Kevin Day [Mon, 3 Jul 2023 03:02:08 +0000 (22:02 -0500)]
Progress: Further work in getting TacocaT working.

I decided to keep things simple and remove the background process and PID file related functionality.

I renamed "from" and "to" into "receive" and "send".
This relating context makes more sense and can be less confusing.

The network and the local files should be just about ready to use.
The actual implementation of the network processing code is next.

I intend to use either threading or forking to handle each send or receive connection set.

16 months agoProgress: Fix dependencies and start adding network processing code.
Kevin Day [Fri, 30 Jun 2023 02:47:38 +0000 (21:47 -0500)]
Progress: Fix dependencies and start adding network processing code.

Remove not needed dependencies and add needed dependencies.

This now processes socket files and network addresses for use by the program.

16 months agoProgress: Work in tacocat, doing some cleanup and fixing things up.
Kevin Day [Thu, 29 Jun 2023 02:25:49 +0000 (21:25 -0500)]
Progress: Work in tacocat, doing some cleanup and fixing things up.

This is done before I realized that I needed more functions in f_network project in FLL.
I did a small amount of work and then shifted my time and effort back to f_network project.

This adds the missing readme.tacocat.txt file.

16 months agoFeature: Initial addition of the "TacocaT" program.
Kevin Day [Wed, 28 Jun 2023 03:13:12 +0000 (22:13 -0500)]
Feature: Initial addition of the "TacocaT" program.

The "TacocaT" program is intended to be similar to netcat.
To concatenate multiple network connections in this context simply means to transfer data from one point to another.

The intent and purpose of this program is really to test my network connection software.

This program is only stubbed out at this point in time.

I need to figure out how I want the data files to be setup.
The network code is not implemented at all, yet.

I also decided to tease my plans on improving the existing Kevux DNS alternative network resolution methodology.

16 months agoProgress: Miscellaneous improvements to the Remove program.
Kevin Day [Wed, 28 Jun 2023 03:12:12 +0000 (22:12 -0500)]
Progress: Miscellaneous improvements to the Remove program.

Update the build settings file to be more in line with the FLL program build settings files.

Update the structure where I noticed it has become out of synchronization with the FLL programs structure.
Fix minor mistakes such as "utf8" is present in the file when it should instead be "remove".

17 months agoProgress: Begin setting up directory recursion handling.
Kevin Day [Mon, 19 Jun 2023 20:15:12 +0000 (15:15 -0500)]
Progress: Begin setting up directory recursion handling.

I started drafting out the directory recursion for the remove.
In the middle of this I decided I should really instead focus on this years goal, networking.

I am going to follow up with network based projects and so I am putting this on the back burner.

17 months agoProgress: Implement actual file removal for non-directory files.
Kevin Day [Sun, 18 Jun 2023 16:58:44 +0000 (11:58 -0500)]
Progress: Implement actual file removal for non-directory files.

This stubs out the directory removal but does not peform directory removal.

The symbolic link following is implemented on removal as well.

17 months agoBugfix: Use correct length in string for help print.
Kevin Day [Sun, 18 Jun 2023 14:48:18 +0000 (09:48 -0500)]
Bugfix: Use correct length in string for help print.

The second to last "A date like" message has the wrong length for the string being printed.

17 months agoBugfix: The Unix "ctim" is not "create" time but instead is "change" time.
Kevin Day [Sun, 18 Jun 2023 14:41:12 +0000 (09:41 -0500)]
Bugfix: The Unix "ctim" is not "create" time but instead is "change" time.

Rename the parameter options from "create" to "change".

It would be great to have a "create" option, but that is not available.

17 months agoUpdate: The macro macro_f_state_t_initialize_1 is out of date.
Kevin Day [Sun, 18 Jun 2023 14:02:46 +0000 (09:02 -0500)]
Update: The macro macro_f_state_t_initialize_1 is out of date.

I missed this in my resynchronize commit 176432f8289de183fd0e16f3b371686444b93d87.

17 months agoUpdate: Resynchronize with the latest changes from the FLL 0.7.x development.
Kevin Day [Sat, 17 Jun 2023 22:25:51 +0000 (17:25 -0500)]
Update: Resynchronize with the latest changes from the FLL 0.7.x development.

19 months agoProgress: Update with recent FLL changes.
Kevin Day [Wed, 5 Apr 2023 22:38:04 +0000 (17:38 -0500)]
Progress: Update with recent FLL changes.

The install.sh script is now up to date with recent major changes in the install.sh file in the FLL project.

Make sure to conditionally handle the thread in the main progam based on _di_thread_support_ define.

19 months agoUpdate: Use the recently refactored f_compare, f_parse, f_rip.
Kevin Day [Mon, 27 Mar 2023 02:21:12 +0000 (21:21 -0500)]
Update: Use the recently refactored f_compare, f_parse, f_rip.

19 months agoProgress: Continue work.
Kevin Day [Sun, 26 Mar 2023 00:49:50 +0000 (19:49 -0500)]
Progress: Continue work.

Add incomplete copyright printing.

Remove or disable the /proc relating "isolate" functions.
I will think later on if and how I want to support that.
It may be usefully to have a "--proc=/proc" style long parameter if this is decided to be kept.

Add some needed changes that I missed in the previous commit regarding updating to FLL 0.7.x/0.8.x.

Generalize some of the functions a bit more than previously done.

Add more comments about plans to make the future work easier.
It took me a bit of time to remember where I left off and these comments should now help me in the future.

19 months agoUpdate: Change this project from using FLL 0.6.x to FLL 0.7.x/0.8.x.
Kevin Day [Sat, 25 Mar 2023 04:31:03 +0000 (23:31 -0500)]
Update: Change this project from using FLL 0.6.x to FLL 0.7.x/0.8.x.

Most, if not all, of the practices are now migrated.
If I missed anything, I will likely eventually find out.

Change the file and path structure to match recent design changes.

Update the install.sh script to the latest version.

22 months agoProgress: Continue working on remove program.
Kevin Day [Fri, 13 Jan 2023 03:19:00 +0000 (21:19 -0600)]
Progress: Continue working on remove program.

Significant development towards completing date and time related checks.
This is not yet complete.

Fix existence test mistake, do not treat the file not found error as an error during simulation.

The settings loading has several loops.
Redesign the main function to start the thread.
The settings loading now checks in some of its loops for an interrupt signal.

22 months agoProgress: Minor improvements to the simulation mode.
Kevin Day [Fri, 6 Jan 2023 04:04:59 +0000 (22:04 -0600)]
Progress: Minor improvements to the simulation mode.

Do not immediately return on invalid link target when following.
Set a minimum digit size when printing the mode octals.

22 months agoUpdate: Add support for installing documentation files.
Kevin Day [Fri, 6 Jan 2023 04:02:00 +0000 (22:02 -0600)]
Update: Add support for installing documentation files.

22 months agoCleanup: Use correct program name and version in the install script.
Kevin Day [Fri, 6 Jan 2023 03:50:36 +0000 (21:50 -0600)]
Cleanup: Use correct program name and version in the install script.

22 months agoUpdate: De-couple the build settings data file from the install.sh script.
Kevin Day [Thu, 5 Jan 2023 01:54:45 +0000 (19:54 -0600)]
Update: De-couple the build settings data file from the install.sh script.

The design is originally focused around the data/build/settings file.

This file is simple enough and easy enough to use that I decided to use it beyond its intended design.

I noticed that the data/build/settings isn't required anymore.
Removing this allows me to better use in other projects, such as those that have only a fakefile or have a different directory location for the build settings data.

The install.sh script is even simpler now.

22 months agoProgress: Begin implementation of the 'remove' series of programs.
Kevin Day [Wed, 4 Jan 2023 02:21:28 +0000 (20:21 -0600)]
Progress: Begin implementation of the 'remove' series of programs.

Much of the work is drafted out and likely to change.

The core of the 'remove' program is implemented.
The 'date' related functionality is actively being worked on.

The actual removal functionality will be implemented after all of the simulation is completed.
Once the remove is implemented and working, then supplementary 'remove' programs, such as 'rm', 'unlink', and 'rmdir' will be implemented.

23 months agoUpdate: Add some basic, initial, files.
Kevin Day [Tue, 13 Dec 2022 04:43:18 +0000 (22:43 -0600)]
Update: Add some basic, initial, files.

Provide the initial readme files (more changes to come).

Provide the install.sh file, copied from the FLL project.

Add the different license files for the licenses to be used.

In general, all source code is under the LGPL2.1 or greater license.
In general, all specifications and specification documentation are under the Open Standard License 1.0.
In general, all non-specification and non-specification documentation is under CC By SA 4.0.