Justin Reichardt
ba490c27d7
Split config and hosts into separate modules
...
This cleans up the main file to make things easier to work with
2023-03-06 19:04:44 -06:00
Justin Reichardt
75207c51df
Added a simple http server
...
This will later be used for serving false content
2023-03-06 19:04:44 -06:00
Justin Reichardt
e2eb14dbc8
Now detects the OS at compilation
...
Using build tags was a more elegant way of determining the OS. Hopefully making
less room for errors and easier configuration later
Also it is now a negligibly smaller binary
2023-03-06 19:04:44 -06:00
Justin Reichardt
4d37aab047
Forgot to add the default config file...
2022-06-13 22:08:23 -05:00
Justin Reichardt
e5df9dd3ae
Moved the default cfg to a file
...
This allows for it to be edited in a single location, be able to be copied to
the share directory for easy recovery, and later be available at install when packaging
2022-06-13 00:56:43 -05:00
Justin Reichardt
51e487fccb
Edited the default config file to be 80 char or less per line
2022-06-13 00:32:23 -05:00
Justin Reichardt
a641b9cd96
Informs the user when the deamon will restart the process
2022-06-12 23:04:53 -05:00
Justin Reichardt
e5dd948b98
If a config file doesn't exist, create one
2022-06-12 22:07:52 -05:00
Justin Reichardt
36ae1964ad
Added removetimestamp flag
...
This is useful for logging programs such as systemd to run the program without
having double timestamps. It also remove the GPL license information
Updated the Systemd service to use this
2022-06-12 21:09:06 -05:00
Justin Reichardt
dec121cb2d
Corrected systemd path location of config
2022-06-12 20:52:12 -05:00
Justin Reichardt
3f446fbaca
Do not display time if not in daemon mode
2022-06-12 20:45:11 -05:00
Justin Reichardt
0d063f31a2
Added version information to the program
...
--version flag shows version information
2022-06-12 20:30:03 -05:00
Justin Reichardt
ef5fddc323
Added the copyright notice to the program
2022-06-12 20:13:16 -05:00
Justin Reichardt
75f393d8bd
Checks for rhosts.cfg and parent directory
...
If the directory doesn't exist it tries to create it. If the config
doesn't exist it fails with a log error explaining.
2022-03-01 21:59:49 -06:00
Justin Reichardt
2d19f1692d
Removed old placeholders
2022-03-01 13:23:42 -06:00
Justin Reichardt
199c132db2
Whitelisted items are removed
...
All items are now counted and displayed after processing
2022-03-01 13:14:17 -06:00
Justin Reichardt
b3f50d4260
Whitelisted entries are removed from hosts file
2022-03-01 12:36:30 -06:00
Justin Reichardt
901f8c537e
Detects whitelist in the options
...
Passes the addresses of the variables when parsing the config file
Fills out the whitelist string array with config entries
2022-03-01 10:44:46 -06:00
Justin Reichardt
c32bed5041
Added ipv6 to the hostfile
...
Now routes all urls to 0.0.0.0 and ::
2022-02-26 23:42:57 -06:00
Justin Reichardt
006ea0aa11
Enabled Windows
...
Windows is still not ready fro prime time, but it does function
2022-02-26 21:06:09 -06:00
Justin Reichardt
6a5b2b7363
Filters out duplicates and comments
...
Creates a list of only the sites that can then be used to remove
duplicates and then set the sending address, currently 0.0.0.0
2022-02-23 21:22:12 -06:00
Justin Reichardt
01584ea27a
Removed the uneeded i variable in main
...
Was originally used since the for loop doesn't have a dowhile, but
breaking when not false made the code simpler to understand
2022-02-23 13:45:43 -06:00
Justin Reichardt
6715716701
Made sure there was a comment for every function
2022-01-26 21:22:54 -06:00
Justin Reichardt
fbb39ff8e3
Checks old records if cannot download from online
...
Before giving up on a download entry, it will check the hosts file for a
previous record to continue using
2021-12-09 20:58:59 -06:00
Justin Reichardt
f8a6a284c2
Remove rhosts temp file when completed
2021-12-09 18:09:51 -06:00
Justin Reichardt
17d3abc90a
Corrected cfgparse return values
...
Accidentally changed the return value to not return anything ever
2021-12-09 18:06:23 -06:00
Justin Reichardt
1d3f426beb
Gracefully exits on failure
2021-12-09 18:02:18 -06:00
Justin Reichardt
49612063d7
Added minimal support for daemon mode
2021-12-09 17:43:39 -06:00
Justin Reichardt
b42829d904
Writes temp file to hosts file
2021-12-09 17:03:00 -06:00
Justin Reichardt
f356390104
Adds sites to tmp file
2021-12-09 16:55:14 -06:00
Justin Reichardt
9eb4d9d543
Download saves to the same tmp file as everyone
2021-12-09 16:44:09 -06:00
Justin Reichardt
1f9d3faa8b
Add a header and trailing new line to downloads
...
Header allows the reader to know where the additions came from and the
new line makes sure that 2 entries down get jumbled together
2021-12-09 16:37:55 -06:00
Justin Reichardt
6529fe49fd
Copies the original content of hosts
...
Copies it to the tmp file to be copied back later
2021-12-09 16:28:30 -06:00
Justin Reichardt
99b17d68b0
Performs downloads to tmp directory
2021-12-09 16:08:57 -06:00
Justin Reichardt
12e774a3b4
Pass lists of downloads and sites
...
Main is now passed 2 arrays or strings: downloads and sites
2021-12-09 15:36:45 -06:00
Justin Reichardt
40c6572a81
Moved setting sys params to sysdetect
...
Cleans up the main function
2021-12-09 15:21:54 -06:00
Justin Reichardt
ad1410410b
Moved config parsing to a seperate function
...
This will allow for easier looping later on when this can be run as a
daemon
2021-12-09 15:12:44 -06:00
Justin Reichardt
154bd3dfe8
Parses config file
...
Parses the config file using cfgparseline
2021-12-09 15:02:58 -06:00
Justin Reichardt
8bfc224d5b
Reads the cfg config file to stdout
2021-12-08 14:29:15 -06:00
Justin Reichardt
66ab1732bc
Detects the running OS
2021-12-01 14:25:47 -06:00
Justin Reichardt
2a4c78c152
Changing language to go
...
It is being changed to go in order to practice the language before I
start another project.
2021-12-01 13:56:41 -06:00
Justin Reichardt
a8677c97c9
Changed fgetc variables to int
...
fgetc used "char c" for all returns. Unfortunately this doesn't work for
all architectures. So an "int b" variable was created to recieve the
return before casting it into c.
2021-09-17 12:53:31 -05:00
Justin Reichardt
d125a99347
Removed old makefile instructions from README
2021-09-17 11:59:41 -05:00
Justin Reichardt
3ce1982af6
Added config.h.in file
...
cmake generates a config file. It currently just shows the version.
rhosts now prints the version at start
2021-09-17 11:28:11 -05:00
Justin Reichardt
fe7d96e573
Removed openfile and closefile functions
...
They are not used and so were removed
2021-09-02 16:43:27 -05:00
Justin Reichardt
be119d5922
Cleans Download
...
Currently removes comments and empty lines from downloaded file. Later
will verify contents, convert to ipv4 and ipv6, and remove duplicates
2021-09-02 15:17:49 -05:00
Justin Reichardt
3893dc2bd9
Revert "Added libclogs"
...
libclogs had issues when the program was split into multiple files.
So it is being removed for now and will be readded later.
2021-09-02 10:38:59 -05:00
Justin Reichardt
954aa465d4
Changed -d to --debug
...
This was done for future daemon implimentation on Windows devices
2021-08-30 11:47:17 -05:00
Justin Reichardt
74c0f189a0
Log level is set to WARNING unless -d flag is used
...
-d flag now sets logging to debug
2021-08-30 11:46:02 -05:00
Justin Reichardt
0e431bec54
Finished adding every print to clogs
2021-08-30 10:55:24 -05:00