]> Kevux Git Server - kevux-tools/log
kevux-tools
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.