Releases: friendly-bits/geoip-shell
v0.3.3
This is mainly a bugfix/code maintenance release.
Main changes:
- lots of code cleanup
- optimizations for faster config and status loading across multiple scripts
- the 'status' action in the -manage script is now implemented via a new library script (lib-status) rather than via internal function
- multiple improvements to the 'apply' action in the -manage script which fix some edge case bugs
- some additional minor bug fixes
- improved console messages
Full Changelog: v0.3.2...v0.3.3
v0.3.2
Main changes in this release:
- Fixed a regression introduced in v0.3 with restore from backup failing on iptables-based systems.
- Lots of code cleanup.
- Some backend functions optimizations.
- Improved status report in the manage script.
- Added support for shells: 'mksh, lksh' (they seem to work, albeit they are slow with geoip-shell because of the lack of
printf
built-in) - The install script now has an option (
-a
) for setting the data directory path. - The option for 'nobackup' (
-o
) in the install script now requires a boolean argument (true|false
). - The default data directory on OpenWrt is now /tmp/geoip-shell-data (rather than /etc/geoip-shell/data). This is to avoid wear of the fragile flash storage on embedded devices.
- For the same reason, by default OpenWrt installs are now configured with the
-o true
option, which disables automatic backups of the ip lists. - The default automatic update schedule for OpenWrt is now the same as for other systems (daily at 4:15am).
Full Changelog: v.0.3.1.3...v0.3.2
v.0.3.1.3
This is a minor bugfix release. There were some double entries in the usage() function of the -manage script which are removed in this release. Also the usage() function output was slightly improved in the -manage and -install scripts.
In addition, support has been implemented for creating OpenWrt package but this is not yet functional, and currently doesn't affect the functionality.
Full Changelog: v0.3.1.2...v.0.3.1.3
v0.3.1.2
This is a minor reliability update with the following changes:
- fixed a typo in the code checking for stale lock file
- fetch: check connectivity before attempting fetch
- uninstall: when uninstalling, kill fetch processes (if any) spawned by geoip-shell
Full Changelog: v0.3.1.1...v0.3.1.2
v0.3.1.1
This is a hotfix for release v0.3.1. Fixed errors related to removal of trusted and lan ipsets when changing ipset type (from net to ip or the opposite). The bug only applies to iptables-based systems.
Full Changelog: v0.3.1...v0.3.1.1
v0.3.1
This is a rather big release, with the main focus on enabling the -manage script to change some config which previously was only changeable during installation:
- geoip blocking mode (whitelist/blacklist)
- which network interface(s) geoip is applied to
- ip lists source
- LAN ip's/subnets
- Trusted ip's/subnets
- Replacing country codes completely (rather than adding/removing which was already implemented)
This is implemented in a semi-interactive way, which means that changing certain options may require additional information, which the manage script will ask about, unless they have been specified via command line arguments. So for example, changing geoip blocking mode with geoip-shell apply -m [whitelist|blacklist]
will require to specify new country codes, which you can either do by adding -c ["country_codes"]
to the command line or in response to the question asked by the manage script.
All that is now available via the geoip-shell apply
command. Read the updated 'Usage' section in README.md or run geoip-shell -h
for additional info on how to use these features.
In addition, documentation has been updated and the usage() functions output has been updated and improved in multiple scripts. The geoip-shell status
command now also reports whether LAN subnets automatic detection is on or off.
Full Changelog: v0.3.0.1...v0.3.1
v0.3.0.1
This is a hotfix release for v0.3, fixing ANSI colors not removed correctly from syslog entries.
Full Changelog: v0.3...v0.3.0.1
v0.3
This release brings some new features and enhancements:
- Now it is possible to specify individual ip's or subnets (rather than just subnets) for LAN and for trusted ip's.
- the
geoip-shell status
command now reports actual elements of the LAN ip's and trusted ip's in the firewall ipsets (rather than just printing the config) - The main scripts now report the version of geoip-shell when run with the
-h
option.
Full Changelog: v0.2.9.2...v0.3
v0.2.9.2
The -install script was getting too big and slightly chaotic, so in this release I split the new '-lib-setup' script out of it and cleaned up the code. I'm planning to implement support in the -manage script for changing settings that are currently only settable during installation, so the -lib-setup script should be useful for that as well.
An additional minor change is that the config for protocols-ports is now stored in a unified format, rather than in backend (iptables/nftables) specific format, and the -lib-apply-nft and -lib-apply-ipt scripts parse it into backend-specific format. This means that if you have protocols-ports settings and you upgrade from iptables to nftables, geoip-shell should not break.
Also fixed a potential bug related to OpenWrt.
Full Changelog: v0.2.9.1...v0.2.9.2
v0.2.9.1
This is a hotfix for v0.2.9. I wasn't completely happy with the way scripts initialization was working, and this release finally has it as it should be.
Full Changelog: v0.2.9...v0.2.9.1