Commit graph

3251 commits

Author SHA1 Message Date
Adam Warner
0a9965292c
Additional check to fix any existing cases of "24h" in setupVars.conf automatically.
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-28 19:40:13 +01:00
Adam Warner
4fb66e632f
The other h 2017-07-28 16:30:03 +01:00
Adam Warner
5787895794
stop an extra h being added to leasetime of DHCP server. We already storethe h in setupVars.conf
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-28 16:10:13 +01:00
Adam Warner
d90489b31d
Include branch we're switching from
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-27 22:21:25 +01:00
Adam Warner
f38912a0c9
- Correctly overwrite ${INFO} boxes with ${CROSS} etc
- Notify user that branch has been changed

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-27 21:33:41 +01:00
WaLLy3K
f24ab8508e WIP cleanup
* Changed supernova/eventHorizon variables to match their purpose
* Add gravity_DNSLookup() function
* Ensure all comments are clear and relevant
* Use && instead of || in gravity_Collapse()
* Renamed existing functions, and placed them in order of script execution
* Use \t instead of literal tab in gravity_ParseFileIntoDomains()
* Replace instances of "truncate" with : > (e.g: gravity_Schwarzschild())
* Ensure correct variables are local'd
* Use phrase "Cleaning up stray matter" when gravity_Cleanup() is called
* Add black/white/wildcard switches for list.sh
* Ensure necessary functions are called when modifying black/white/wildcards

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-27 12:34:35 +10:00
WaLLy3K
2d8fff099f Pass correct options to gravity.sh
* Optimise $validDomain function by using bashism and `grep`
* Add black/white/wildcard variables to pass to Reload()
* Revert reload variable behaviour
* Ensure Reload() function passes correct options to gravity.sh

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-27 12:34:26 +10:00
Adam Warner
dce36d8ded Merge branch 'master' into release/3.2 2017-07-26 19:49:57 +01:00
Mcat12
18d0278279 Merge pull request #1638 from pi-hole/hotfix/CIDR
CIDR hotfix > development
2017-07-26 14:41:03 -04:00
Adam Warner
4e525040f3 Merge branch 'development' into hotfix/CIDR 2017-07-26 18:23:02 +01:00
WaLLy3K
fdf2649f2f Clean up known remaining colour output issues (#1613)
* Print newline on error message

* Output last three lines of error if update fails

* Consistent error messages & housekeeping

* Add shellcheck directive to ignore COL_TABLE
* Quoted and braced variables for codebase consistency
* Escaped newlines correctly
* Made error messages consistent (indenting and wording)
* Removed consecutive echos

* Conditional formatting consistency

* Braced, quoted and used [[ on conditionals

* Fix specific ShellCheck issues

* Fixed issues that could be safely changed without extensive testing

* Update SELinux whiptail behaviour & more

* Colourised some strings
* Fixed multiple line string indenting
* Made output consistent with existing codebase
* Removed sequential echos
* Make SELinux whiptail use "--defaultno", and change text wording

* Add help text for hostrecord, and colourise output

* this should fix the tests...

Signed-off-by: Adam Warner <adamw@rner.email>

* revert changes to `update_package_cache()` to prove tests

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-26 18:00:08 +01:00
Mcat12
b09c660833 Always process DNS and DHCP settings in installer (#1630)
* Always process DNS and DHCP settings in installer

* Make sure dnsmasq config exists before modifying it

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>

* Make sure the dnsmasq config directory exists

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>

* Only remove the DHCP config if it exists (fixes tests, hopefully)

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2017-07-26 17:15:23 +01:00
Adam Warner
c02a24cf71 Fix/unbreak development (#1635)
* Always process DNS and DHCP settings in installer

* change where finalExports is called and where LIGHTTPD_ENABLED is set.

Signed-off-by: Adam Warner <adamw@rner.email>

* this may or may not work. If it does, can be functionised to reduce code duping

Signed-off-by: Adam Warner <adamw@rner.email>

* This will fix the tests, but break the patch

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-26 14:34:40 +01:00
Mcat12
a77136bd1d Merge pull request #1600 from pi-hole/tweak/OnlyDownloadFTLNew
Only download FTL if a newer version than currently installed is detected (or if no version is detected)
2017-07-25 22:11:31 -04:00
WaLLy3K
e0eb5eb2b1 Fix queryFunc if adlists URLs have been removed (#1618)
* Fix queryFunc if adlists URLs have been removed

* Allow for -adlists command line switch (where the "s" is a typo)
* Add error message when unable to find associated adlists URL

* Provide PR fix on current dev version

* Add blResult variable for white/black match

* Supporting Block Page queryFunc fixes

* Re-add unmerged lines
2017-07-25 23:07:06 +01:00
WaLLy3K
714fd93292 Provide correct FTL stats (#1619)
* Provide correct FTL stats

* Use the correct lines in the array when displaying FTL stats
* Treat ads_blocked_today/dns_queries_today as currency, like domains_being_blocked is on large screens

* Chronometer Shellcheck validation

* Remove unnecessary \ from CPU usage readout
2017-07-25 23:03:23 +01:00
Adam Warner
a293b5a371
prevent ./automated install/basic-install.sh: line 1886: /usr/bin/pihole-FTL: No such file or directory on new install, or if pihole-FTL is missing for whatever reason.
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-25 22:49:06 +01:00
Adam Warner
1c93868ae1
Adjust wording of echos
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-24 23:22:04 +01:00
WaLLy3K
61ff0452e1 Remove duplicate code
* Make RestartDNS() use `pihole restartdns`

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-24 21:27:12 +10:00
WaLLy3K
406098e55a Speed up refresh time
* Add "--blacklist-only" to only run essential gravity functions
* Pass "--wildcard" option to `gravity.sh` to ensure dnsmasq is restarted

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-24 21:26:39 +10:00
WaLLy3K
a2825be819 Add dnsmasq "force-reload" option
* Made use of $PI_HOLE_SCRIPT_DIR
* Fix #1610 & #1624
* Add "$2" to restartDNS options

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-24 21:25:04 +10:00
WaLLy3K
6830b08723 Clean up and optimise Gravity
* Shellcheck validation
* Made variable names, function names, comments and output clearer to understand
* Quoted and braced variables and conditionals
* Fix adlists.list handling logic, and remove any CR line endings
* Make CP/MV/RM provide user-friendly output upon failure
* Change adlists.list retrieval logic
* Moved and fixed adlists.list domain parsing logic
* Create gravity_ParseFileAsDomains() function to handle parsing of source files
* If no changes to a list is detected, print no output
* Ensure each source blocklist has a final newline
* Format number output as currency
* Make array of adlists domain sources unique to prevent redundant whitelisting
* Merged bash IPv4/IPv6 hosts formatting IF statement into an awk one-liner
* Trap Ctrl-C cancellations and run gravity_Cleanup()
* Use new gravity_Cleanup() function on errors and script completion
* Ensure that dnsmasq uses force-reload when gravity is invoked
* Add --wildcard option to ensure dnsmasq is restarted upon b/wlisting of a wildcard

Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-24 21:24:34 +10:00
WaLLy3K
eead2f059b Add review suggestions to Issue Template
* Use a more relevant link when explaining debug
* Re-add feature request note
2017-07-23 11:06:43 +10:00
WaLLy3K
291c111ce8 Update PR Template text
Signed-off-by: WaLLy3K <wally3k@pi-hole.net>
2017-07-22 15:29:36 +10:00
WaLLy3K
2ccf063dfe Update Issue Template text 2017-07-22 15:15:39 +10:00
WaLLy3K
49aee8b931 Fixed development branch check 2017-07-19 12:26:00 +10:00
WaLLy3K
f2a3b557c8 Updated Block Page to work with queryFunc output 2017-07-19 00:15:59 +10:00
Adam Warner
b0eceddcec Merge pull request #1617 from pi-hole/hotfix/CIDR
Hotfix/cidr (Pi-hole 3.1.1)
2017-07-18 09:39:20 +01:00
Adam Warner
0a062d26e6 Merge pull request #1611 from pi-hole/developmentNew
Sort out Merge conflicts with master
2017-07-17 14:49:55 +01:00
Adam Warner
20b2dd6b19 Merge pull request #1567 from pi-hole/tweak/checkout_FTL
Add pihole checkout ftl
2017-07-17 14:38:30 +01:00
Adam Warner
83592a5e70
Put '"'s in the right place
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-17 11:18:03 +01:00
Adam Warner
70fb733fea
col_table does not exist yet, will break the install if pushed as hotfix.
Not sure why these additional "'s were put in, they break the update command, too.

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-17 10:53:49 +01:00
Adam Warner
eb8333c772
Merge branch 'development' into developmentNew 2017-07-16 16:45:33 +01:00
WaLLy3K
c9a98b68c8 Avoid reactivating a deactivated lighttpd service (#1485)
* Do not activate disabled lighttpd upon update

* Fixes #1362

* Use systemctl when available

* Move `finalexports` to the very end of the install script
set value of LIGHTTPD_ENABLED to 1 or 0 depending on whether or not lighttpd is enabled or disabled.
actually save LIGHTTPD_ENABLED value to setupvars.conf

Signed-off-by: Adam Warner <adamw@rner.email>

* add [[ -z "${LIGHTTPD_ENABLED}" ]] back in!

Signed-off-by: Adam Warner <adamw@rner.email>

* Ensure "Loaded:" is the line being checked

* Colourise disabled lighttpd message

* Prevent disabled lighttpd triggering error

* change of plan, don't need that [[ -z "${LIGHTTPD_ENABLED}" ]]

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-16 16:44:14 +01:00
Adam Warner
247d3ed729
list availible branches for FTL
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-16 13:54:23 +01:00
Adam Warner
031c6428d5
Merge branch 'tweak/checkout_FTL' of https://github.com/pi-hole/pi-hole into tweak/checkout_FTL
Signed-off-by: Adam Warner <adamw@rner.email>

# Conflicts:
#	advanced/Scripts/piholeCheckout.sh
2017-07-16 13:34:20 +01:00
Adam Warner
f2e9d585f7
* Add helptext for pihole checkout ftl
* Only attempt to install FTL if branch was found
* ~~corebranches~~ webbranches (web branches now actually listed)

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-16 13:33:00 +01:00
WaLLy3K
8af9853b9a Fixed minor formatting issues
* Removed useless echo
* Quoted and braced conditionals
* Explicit escaping of newline
* Fixed arrays implicitly concatenating (SC2199)
* Fixed incorrect variable used in checkout web
2017-07-16 22:32:34 +10:00
Adam Warner
783f50657b
Merge branch 'development' into tweak/checkout_FTL
Signed-off-by: Adam Warner <adamw@rner.email>

# Conflicts:
#	advanced/Scripts/piholeCheckout.sh
2017-07-16 12:25:27 +01:00
WaLLy3K
3a50b91722 User-friendly queryFunc() output (#1483)
* User-friendly queryFunc() output

* Silence grep errors
* Provide 'pihole -q -h' help output
* Rewrite option handling
* Loop through grep stdout to make query output user friendly
* Add -adlist option to show block list URL instead of internal file name
* Limit general searches to 10 matches per block list
* Add -all option to override 10 match limit
* Fixed 'pihole -h' wording

* Further query optimisations

* Optimised scanList() output by switching folder
* Re-added processWildcards() function
* Added "-bp" exact matching option for use with block page
* Standardised query output
* Separated wildcard search from blacklist/whitelist search
* Optimised sorting by sorting glob output and not scanList() output

* Fixed result skipping

* Add text for wildcard result on exact query

* Fix wildcard result output

* Multiple wildcard matches on exact query could cause unexpected output

* Remove unnecessary replacement

* Make grep only output matching text

* HOSTS format lists will also output the IP address
* That substitution was necessary

* Remove IP address from HOSTS format lists

* Filter unwanted content

* Add /dev/null to grep, to always print file name (even when searching only one block list)
* Use three seds to remove unwanted content from block lists

* Merge with development

* Simplify queryFunc code
2017-07-15 11:56:40 +01:00
WaLLy3K
3631d1349e Prevent Web Admin from printing restartdns colour codes (#1575)
* Prevent Web Admin from printing unnecessary msgs

* Make DNS restart behaviour consistent
2017-07-15 11:11:06 +01:00
Dan Schaper
05c8687041
Integrate DL's update.sh fixes.
`shellcheck -x` for following files.

Do not test for included files SC1091

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
Signed-off-by: Adam Warner <adamw@rner.email>

# Conflicts:
#	advanced/Scripts/update.sh
2017-07-14 22:40:34 +01:00
Dan Schaper
66f32b7601
Remove testing for debug as this is getting a re-write by Jacob.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-07-14 22:39:13 +01:00
Dan Schaper
9101916719
Test exclusion for sourced files SC1090.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-07-14 22:39:04 +01:00
Adam Warner
edb594461d
Remove CIDR from IPv6 address when detecting it in the install script
Signed-off-by: Adam Warner <adamw@rner.email>

# Conflicts:
#	automated install/basic-install.sh
2017-07-14 22:31:43 +01:00
Mcat12
9464b71a6e
Remove /* from IPv6 as well as IPv4
Fixes Discourse issue: https://discourse.pi-hole.net/t/ipv6-aaaa-dns-issue/3830

Signed-off-by: Adam Warner <adamw@rner.email>
# Conflicts:
#	gravity.sh
2017-07-14 22:29:16 +01:00
Adam Warner
7d56e2a937
FTL has an L in it, innit?
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-14 20:54:41 +01:00
Adam Warner
218aa03f05
Merge branch 'developmentNew' of https://github.com/pi-hole/pi-hole into developmentNew 2017-07-14 20:50:52 +01:00
Adam Warner
1db03a10d7 Merge branch 'master' into developmentNew 2017-07-14 20:47:49 +01:00
Jacob Salmela
e1f818ffb7 Tweak/debug improvements (#1585)
* check for CIDR notation when comparing IPv6 address to that found in setupVars.conf

* highlight bad address entries in pihole.log and reference a corresponding FAQ

* show header output if Pi-holes x-header does not match

* fix automated mode when running from the dashboard.  It would previously not automatically upload and generate a token.

* show disclaimer message

* undocumented feature for now: obfuscate domains in pihole.log so they are not visible when sent to the Pi-hole developers.  We need to make an additonal flag for this in the pihole command.  if the variable OBFUSCATE has a value, it will replace the domain in the log with a placeholder value

* fix small typo in the disclaimer
2017-07-14 16:53:45 +01:00