Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pi-hole FTL v5.0 #747

Merged
merged 822 commits into from
May 10, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
822 commits
Select commit Hold shift + click to select a range
841719e
Merge branch 'development' of github.com:pi-hole/FTL into development
DL6ER Dec 11, 2019
c2755d8
Merge branch 'development' into new/internal-blocking
DL6ER Dec 11, 2019
dc2c3c9
Merge pull request #642 from pi-hole/new/internal-blocking
DL6ER Dec 12, 2019
699f25d
Add CNAME_DEEP_INSPECT config option (default: true). It can be used …
DL6ER Dec 12, 2019
33940f2
Add group zero support.
DL6ER Dec 12, 2019
5637d13
Update FTL gravity.db.sql template to gravity database version 7.
DL6ER Dec 12, 2019
8058478
Add new zero-group-specific tests (domain associated ONLY to a partic…
DL6ER Dec 12, 2019
83018ac
Merge pull request #663 from pi-hole/new/CNAME_DEEP_INSPECT
DL6ER Dec 12, 2019
d59b05f
Fix buffer overflow checking in parse_hex(). The inputs to parse_hex …
simonkelley Dec 12, 2019
60c0e10
Merge branch 'development' into update/dnsmasq
DL6ER Dec 16, 2019
d752539
Do not try to resolve client host names during the tests. This occasi…
DL6ER Dec 18, 2019
b536bf0
Merge pull request #666 from pi-hole/tweak/no_resolve
AzureMarker Dec 18, 2019
bb9f25c
Merge pull request #664 from pi-hole/new/group_zero
DL6ER Dec 18, 2019
99ff0c5
Merge branch 'development' into update/dnsmasq
DL6ER Dec 18, 2019
b6d74c7
Fix two testing errors.
DL6ER Dec 18, 2019
baa69a8
Fix crash in DHCP option parsing.
simonkelley Dec 12, 2019
44ef1bb
Avoid RA code trampling on DHCPv6 messages.
simonkelley Dec 20, 2019
e15d950
If we find during a CNAME inspection that we want to block the entire…
DL6ER Dec 21, 2019
36c4917
Explicitly store domains as being whitelisted in FTLs cache for using…
DL6ER Dec 27, 2019
a4f4a09
Implement a query-wide whitelisted property that can hold the to-be-p…
DL6ER Dec 27, 2019
8604804
Change ownership of all shared memory objects before switching user.
DL6ER Dec 27, 2019
b0f0e9a
Set query as whitelist permitted when the domain is already known to …
DL6ER Dec 27, 2019
bdfd955
Merge pull request #671 from pi-hole/fix/chown/shm-files
DL6ER Dec 28, 2019
9cc4e0d
Merge pull request #670 from pi-hole/tweak/CNAME_inspection
DL6ER Dec 28, 2019
8e46afc
Merge pull request #667 from pi-hole/fix/test_suite
DL6ER Dec 28, 2019
45b5b0e
Merge pull request #668 from pi-hole/fix/deep_CNAME_blocking_top_lists
DL6ER Dec 28, 2019
c9c7c27
Add shared DNS cache for FTL. This cache is shared across forks and c…
DL6ER Dec 30, 2019
4c74a29
Add shared per-client regex array. This ensures TCP and UDP workers k…
DL6ER Dec 30, 2019
abf0e4c
Adjust tests after the last bugfix, bring gravity.db.sql schema to ve…
DL6ER Dec 30, 2019
e81faf3
Memory alignment optimizations leading to a slightly reduced footprin…
DL6ER Dec 30, 2019
a7e6d5a
Simplify FTL's blocking decision algorithm.
DL6ER Dec 31, 2019
cbd8a2c
Merge branch 'development' into update/dnsmasq
DL6ER Dec 31, 2019
ecbeb95
Merge pull request #672 from pi-hole/new/shared_dns_cache
DL6ER Jan 3, 2020
1a3737e
Add --tftp-single-port option.
simonkelley Jan 5, 2020
469ed22
Update copyrights to 2020.
simonkelley Jan 5, 2020
97cb49f
Don't send RAs on interfaces without a link-local address.
simonkelley Jan 5, 2020
dc9b80f
Merge branch 'development' into update/dnsmasq
DL6ER Jan 5, 2020
bb8ae74
Check for SERV_NO_REBIND on unqualified domains
guns Dec 30, 2019
847379f
Tweaks to TFTP.
simonkelley Jan 6, 2020
8819498
Revert tftp block number overflow check. Wrapping block nos is fine.
simonkelley Jan 7, 2020
ebadc60
Remove experimental DHCPv6 prefix-class support.
simonkelley Jan 7, 2020
4ecc8e6
Enhance --conf-dir to load files in a deterministic order.
simonkelley Jan 10, 2020
e7aa46d
Use -pipe. This flag has no effect on the generated code, but it make…
DL6ER Jan 15, 2020
0f4270b
Ensure NODATA and NXDOMAIN blocking mode work as expected.
DL6ER Jan 20, 2020
9c9c110
Fix detection of query type.
DL6ER Jan 20, 2020
021cd83
Merge pull request #677 from pi-hole/fix/MODE_NXDOMAIN
DL6ER Jan 20, 2020
7bb451b
Store additional data when a deep CNAME inspection identified a domai…
DL6ER Jan 21, 2020
9889501
Merge pull request #678 from pi-hole/new/query_log_show_CNAME_blocked
DL6ER Jan 23, 2020
56b6c90
Do not block queries when a domain is known to be blocked, however, t…
DL6ER Jan 27, 2020
d177399
Store blocked status only if query was not whitelisted along the path.
DL6ER Jan 27, 2020
9a5a941
Merge pull request #681 from pi-hole/fix/deeply_whitelisted_domain
dschaper Jan 27, 2020
6a6608f
Clarify gravity database debug message
DL6ER Jan 28, 2020
44b772b
Merge pull request #682 from pi-hole/tweak/clarify_gravity_comment
DL6ER Jan 28, 2020
7117d39
Add new CNAME-specific blocking modes [QUERY_GRAVITY_CNAME, QUERY_REG…
DL6ER Jan 29, 2020
21050e8
Pin build image to specific version.
dschaper Jan 29, 2020
a90f14b
Merge pull request #684 from pi-hole/fix/pin-image
DL6ER Jan 29, 2020
122a701
Add new CNAME-specific blocking modes [QUERY_GRAVITY_CNAME, QUERY_REG…
DL6ER Jan 29, 2020
2e7e623
Use number of distinct gravity domains as counted and stored by pihol…
DL6ER Feb 2, 2020
1af4748
Update tests to use gravity domain count stored in test database.
DL6ER Feb 3, 2020
5c08c56
Store ID of matching blacklist regex if this is the blocking reason.
DL6ER Feb 4, 2020
d648572
Regex for which no ID is available should be sent as -1.
DL6ER Feb 4, 2020
3ecc42b
Merge branch 'release/v5.0' into tweak/gravity_count
DL6ER Feb 4, 2020
6562823
Restructure blocking computation.
DL6ER Feb 4, 2020
3639b33
Merge pull request #688 from pi-hole/tweak/gravity_count
DL6ER Feb 5, 2020
66f0612
Special debug logging.
DL6ER Feb 5, 2020
0d9b301
Ensure we group domains read from the views by their ID to avoid impo…
DL6ER Feb 6, 2020
66ba32b
Do not try to measure length of NULL pointer. This avoids a crash for…
DL6ER Jan 18, 2020
2829771
Fix the disease, not the symptom in e40d8bef3bbf2fe8e1287663b2c848170…
simonkelley Jan 26, 2020
df44363
Fix RA problems with two interfaces on same IPv6 subnet.
simonkelley Jan 27, 2020
4a67711
Fix infinite-loop router advert problems.
simonkelley Jan 27, 2020
61bd512
Support prefixed ranges of ipv6 addresses in dhcp-host.
simonkelley Feb 3, 2020
7592ad9
Extend 79aba0f10ad0157fb4f48afbbcb03f094caff97a for multiple IPv6 add…
simonkelley Feb 6, 2020
d4ccbee
Merge pull request #687 from pi-hole/fix/negative_blocked_queries
DL6ER Feb 10, 2020
47348ea
Merge pull request #676 from pi-hole/tweak/gcc_pipe
DL6ER Feb 10, 2020
fb01e09
Merge pull request #689 from pi-hole/ltaub
DL6ER Feb 10, 2020
409985b
Fix subtracting one from the wrong variable.
DL6ER Feb 11, 2020
c32d790
Rename "forwarded" counter to "upstreams" to avoid confusion in the f…
DL6ER Feb 11, 2020
acdd225
Finish renaming "forward destionations" to "upstreams".
DL6ER Feb 11, 2020
56d1cba
Merge branch 'new/CNAME_inspection_details' of github.com:pi-hole/FTL…
DL6ER Feb 11, 2020
06b5f3c
Merge branch 'release/v5.0' into new/CNAME_inspection_details
DL6ER Feb 11, 2020
c3ee98b
Merge pull request #691 from pi-hole/fix/negative_forwardIDs
DL6ER Feb 11, 2020
7ca81e3
Merge pull request #685 from pi-hole/new/CNAME_inspection_details
DL6ER Feb 12, 2020
6adc562
Propagate ID of responsible regex up from the child to the parent dom…
DL6ER Feb 14, 2020
f52e83b
Add additional logging to the internal resolver is DEBUG_API is set.
DL6ER Feb 15, 2020
7e06e8b
Add tag filtering of dhcp-host directives.
simonkelley Feb 7, 2020
3ab876b
Fix problem with netlink socket and TCP DNS.
simonkelley Feb 9, 2020
dc17721
Fix bug with prefixed wildcard addresses in 137286e9baecf6a3ba97722ef…
simonkelley Feb 10, 2020
f519666
Restore ability to answer non-recursive requests
pemensik Apr 12, 2019
4a913c8
Remove obsolete Pi-hole modification.
DL6ER Feb 15, 2020
cf8b3f0
Use <poll.h> instead of <sys/poll.h>
DDoSolitary Apr 28, 2019
76c7085
dnssec: add hostname info to insecure DS warning
ldir-EDB0 May 11, 2019
053b1b4
Allow empty server spec in --rev-server, to match --server.
simonkelley Feb 11, 2020
793da42
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Feb 15, 2020
ff840d0
Merge pull request #693 from pi-hole/fix/db_regexlink_id
DL6ER Feb 15, 2020
9b57926
Try direct modification of the _res struct to enforce a specific name…
DL6ER Feb 18, 2020
61d67ff
Merge pull request #694 from pi-hole/tweak/more_resolve_details
DL6ER Feb 19, 2020
620daa7
Remove UNKNOWN DNSSEC status and import queries with UNSPECIFIED DNSS…
DL6ER Feb 20, 2020
0554597
Fix incorrect database warning when imporint new CNAME blocked queries.
DL6ER Feb 20, 2020
1b23182
Merge pull request #696 from pi-hole/tweak/dnssec_db_unspecified
DL6ER Feb 21, 2020
1344c91
Merge pull request #697 from pi-hole/fix/incorrect_db_warning
DL6ER Feb 21, 2020
3e7641a
Try to reopen gravity database when not available.
DL6ER Feb 22, 2020
71d2c8d
Add busy timeout to gravity per-client group configuration importing.…
DL6ER Feb 22, 2020
71e8498
Merge pull request #699 from pi-hole/fix/sqlite_crash
DL6ER Feb 25, 2020
7bbac61
Remove DSA signature verification from DNSSEC, as specified in RFC 8624.
simonkelley Feb 26, 2020
310fc92
Add --script-on-renewal option.
simonkelley Feb 27, 2020
43542f2
Add support for ED448 DNSSEC signature verification.
simonkelley Feb 29, 2020
f02d039
Support ECC-GOST DNSSEC signature algorithm.
simonkelley Feb 29, 2020
db54d0a
Factor out closing all file descriptors for later optimisation.
simonkelley Mar 2, 2020
e26f786
Optimise closing file descriptors.
simonkelley Mar 2, 2020
948a5e0
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Mar 2, 2020
0ac6b5c
Implement new SQLite3 subroutine which can interpret IP addresses tha…
DL6ER Mar 3, 2020
6baaf4b
Use defined macro to access 8 bit values.
DL6ER Mar 3, 2020
106010c
Include time.t in log.h instead of FTL.h
DL6ER Mar 3, 2020
351f5f6
Invalid IP addresses in the database should just cause a NO MATCH con…
DL6ER Mar 3, 2020
0b8915a
Improve debugging output, reduce code duplication.
DL6ER Mar 4, 2020
9f39c52
Add config setting FORCE_LOCAL_RESOLVER that can be used to prevent F…
DL6ER Mar 6, 2020
33b638c
Do not force FTL as the first, but as the last server to be used
DL6ER Mar 6, 2020
6a6b6eb
option.c: fix NO_DHCP6 build error
ldir-EDB0 Mar 2, 2020
06dea6d
Ignore routes in non-main tables
donaldsharp Mar 2, 2020
eda454f
Trivial formatting fix.
simonkelley Mar 2, 2020
3e8c114
Fix parameters to setsockopt() for TCP_FASTOPEN.
mandree Mar 5, 2020
6fd9e7d
Update decline address handling in DHCPv6 for new multi-address world.
simonkelley Mar 5, 2020
8b1b92b
Remove compiler warnings in IPv6 checksum code in dump.c
simonkelley Mar 5, 2020
83b12c8
Compiler warning.
simonkelley Mar 5, 2020
3c535bf
Fix compiler warning.
simonkelley Mar 5, 2020
11540ea
Commit cf8b3f0d22050acdf6c080f43c75a8cfcc5d4c37 by DDosSolarity broke…
DL6ER Mar 6, 2020
2317c89
Add all clients FTL knowns about to the network table. This requires …
DL6ER Mar 7, 2020
ae3418a
Do no add any vendor for mock hardware addresses.
DL6ER Mar 7, 2020
0443a5a
Do not create record for clients without active queries
DL6ER Mar 7, 2020
560685a
Do not create records or update clients without active queries
DL6ER Mar 8, 2020
25de973
Add debug symbols for sqlite3. This roughly doubles the size of the r…
DL6ER Mar 8, 2020
5c36610
Fix preparation of client statements when gravity database had to be …
DL6ER Mar 8, 2020
f59c2dc
Increase timeout for compilation to 30 minutes. arm-qemu currently ex…
DL6ER Mar 8, 2020
99bd5e7
Client statement reinitialization has been moved into gravityDB_open(…
DL6ER Mar 8, 2020
58afd08
Diverge error handling between *BSD and Linux.
brad0 Mar 8, 2020
3f80e24
suppress non linux network unused var warnings
ldir-EDB0 Mar 6, 2020
a688ea0
rfc3315: fix incorrect logical '&&' warning
ldir-EDB0 Mar 6, 2020
ee2a53c
Add DHCPv6 ntp-server (56) option handling.
themiron Mar 8, 2020
5db4c0d
Fix error in IPv6 prefix calculation.
pemensik Mar 8, 2020
5b67754
Set NETLINK_NO_ENOBUFS in netlink socket, to avoid POLLERR returns.
simonkelley Mar 10, 2020
f69930b
Update lastSeen for the network_addresses fields. Also add some more …
DL6ER Mar 14, 2020
1caf634
Try to find network_id by querying for the usage of the same IP withi…
DL6ER Mar 14, 2020
c86d250
Only set numQueriesARP when client is defined.
DL6ER Mar 15, 2020
53ea62c
Ensure we add the hostname through a bound text instead of within a f…
DL6ER Mar 15, 2020
f505afe
Also scan ARP count for new clients
DL6ER Mar 16, 2020
9f05254
Add support for Name Authority Pointer (NAPTR) resource record, commo…
DL6ER Mar 17, 2020
3e2ef28
Merge pull request #713 from pi-hole/new/NAPTR
DL6ER Mar 17, 2020
62572e0
Do not fail hard if socket descriptor cannot be written to. Just igno…
DL6ER Mar 23, 2020
aa3cc95
Add more debugging output to database opening.
DL6ER Mar 23, 2020
2fbdf7b
Do not open gravity database if already connected.
DL6ER Mar 23, 2020
45886a1
Source all entries from kernel's neigh cache not only REACHABLE and S…
DL6ER Mar 23, 2020
f004390
Extend stop-dns-rebind to reject IPv6 LL and ULA addresses. We also r…
DL6ER Mar 17, 2020
1d35d4d
Handle old kernels that don't do NETLINK_NO_ENOBUFS.
simonkelley Mar 19, 2020
340a47b
Fixed resource leak on ubus_init failure.
oldium Mar 18, 2020
07c8de2
Signal early that database is opened to prevent re-opening in sub-pro…
DL6ER Mar 23, 2020
18eaa08
Handle FAILED and NOARP entries.
DL6ER Mar 23, 2020
42e4d1c
Validate hostnames obtained through PTR requests made by FTL itself.
DL6ER Mar 23, 2020
dadf889
Define MAXHOSTNAMELEN if unset (needed for musl).
DL6ER Mar 23, 2020
0be640e
Clarify that busy timeout is not an error, just a warning.
DL6ER Mar 23, 2020
302dbae
Use IMMEDIATE transaction when adding to the database. This ensures w…
DL6ER Mar 23, 2020
af8ab3e
Large-scale overhaul for the long-term database handling.
DL6ER Mar 24, 2020
80fbd88
Replace sqlite3_errmsg() by sqlite3_errstr() everywhere to ensure we …
DL6ER Mar 24, 2020
2244ade
Inform user if queries are being hold in memory for later saving (due…
DL6ER Mar 24, 2020
ecb04ee
Avoid CPU spinning if Unix socket is not available
DL6ER Mar 24, 2020
2b2e19d
Move counters definition from memory.c to shmem.c magically clears a …
DL6ER Mar 24, 2020
623f079
Import unknown clients from ARP table
DL6ER Mar 24, 2020
c0b1489
Explicitly set prepared statements to NULL when they are finalized.
DL6ER Mar 25, 2020
8406e1b
Explicitly log if we had to make assumptions because the gravity data…
DL6ER Mar 25, 2020
48186a6
Add DELAY_STARTUP setting to delay startup of the embedded dnsmasq.
DL6ER Mar 24, 2020
5872ebb
Remove option FORCE_LOCAL_RESOLVER as we do not need it.
DL6ER Mar 25, 2020
8f349e1
Add more comments, only print debugging output when DEBUG_DATABASE is…
DL6ER Mar 25, 2020
e596c55
Simplify SQLite 3 database extension
DL6ER Mar 25, 2020
7759a76
Convert recently found (at most 1 hour old) mock-devices into "real" …
DL6ER Mar 25, 2020
603507c
Merge pull request #710 from pi-hole/tweak/FORCE_LOCAL_RESOLVER
DL6ER Mar 25, 2020
149f656
Merge branch 'release/v5.0' into new/all_clients_network_table
DL6ER Mar 28, 2020
f9476dd
Merge pull request #708 from pi-hole/new/CIDR_clients
DL6ER Mar 28, 2020
c3147cc
Merge branch 'release/v5.0' into new/all_clients_network_table
DL6ER Mar 28, 2020
3a5154b
Merge branch 'release/v5.0' into tweak/sqlite_debugging
DL6ER Mar 28, 2020
7ec7577
Merge branch 'release/v5.0' into new/DELAY_STARTUP
DL6ER Mar 28, 2020
ec0579a
Merge pull request #711 from pi-hole/new/all_clients_network_table
DL6ER Mar 29, 2020
abe0c5b
Merge branch 'release/v5.0' into tweak/sqlite_debugging
DL6ER Mar 29, 2020
8f9cae0
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Mar 29, 2020
52d9255
Fix nameserver list in auth mode.
simonkelley Mar 28, 2020
6142ec5
Allow overriding of ubus service name.
oldium Mar 20, 2020
b6364d0
Merge pull request #716 from pi-hole/new/DELAY_STARTUP
DL6ER Mar 29, 2020
d5253f1
Merge pull request #712 from pi-hole/tweak/sqlite_debugging
DL6ER Mar 31, 2020
742e742
CircleCI has an unforseeable number of devices in its ARP cache. Do n…
DL6ER Mar 31, 2020
ceb6f04
Ensure blocking also works when the long-term database is not used. T…
DL6ER Mar 31, 2020
f4d9617
Merge pull request #719 from pi-hole/fix/tests-circleci-arp
DL6ER Mar 31, 2020
81c4eac
Merge pull request #720 from pi-hole/fix/blocking_without_pihole-FTL.db
DL6ER Mar 31, 2020
30032b0
Fix possible memory leak in config.c
DL6ER Apr 1, 2020
2ed0138
Some general tweaks
DL6ER Apr 1, 2020
1636a81
Explicitly log failures in creating the new sqlite3 function.
DL6ER Apr 1, 2020
ff24111
Ensure we don't loose memory after ARP cache parsing.
DL6ER Apr 1, 2020
6d61267
Also return NO MATCH when invoking subnet_match() with non-TEXT argum…
DL6ER Apr 1, 2020
35353b2
Add a comment that gethostbyaddr() may leak memory (only once, not se…
DL6ER Apr 1, 2020
fdb8664
Check arguments are of type SQLITE3_TEXT
DL6ER Apr 1, 2020
06497d7
Initialize resolver subroutines if trying to resolve for the first time
DL6ER Apr 1, 2020
7fae126
Only check/set client status when size of the array is not exceeded. …
DL6ER Apr 2, 2020
564b286
Do not import unknown clients from the ARP cache into FTL's memory. I…
DL6ER Apr 2, 2020
c8caf54
Ensure ARP strings are NULL-terminated
DL6ER Apr 2, 2020
78e0332
Merge pull request #723 from pi-hole/fix/arp_crash
DL6ER Apr 2, 2020
53bc882
Exiting instead of aborting may be benefitial in FTL forks.
DL6ER Apr 2, 2020
41b1296
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Apr 2, 2020
e7e2dbe
Print arguments passed to embedded dnsmasq when at least one DEBUG fl…
DL6ER Apr 6, 2020
f9e0413
Merge branch 'release/v5.0' into fix/TCP_forks
DL6ER Apr 6, 2020
f1f817a
Re-open gravity database (and re-prepare database statements) before …
DL6ER Apr 6, 2020
48dc5ea
Memorize PID of this thread to avoid re-opening the gravity database …
DL6ER Apr 6, 2020
3aa6edc
Implement process-private prepared gravity database client statements…
DL6ER Apr 6, 2020
1246f16
Silently increase size of vector if trying to read out-of-bounds
DL6ER Apr 6, 2020
1636297
Explicitly include type definition of int16_t in config.h as needed b…
DL6ER Apr 6, 2020
c9eb4a1
Remove append and delete instructions as we will always identify clie…
DL6ER Apr 6, 2020
7d3e960
Musl's realloc() does not zero any memory. Do this manually.
DL6ER Apr 6, 2020
536ef08
Free allocated memory after ordinary termination of TCP workers (TCP …
DL6ER Apr 6, 2020
f638a7f
Merge pull request #725 from pi-hole/fix/TCP_forks
DL6ER Apr 7, 2020
3b627c7
Fix rare problem allocating frec for DNSSEC.
simonkelley Apr 4, 2020
3cfa419
Tweak to DNSSEC logging.
simonkelley Apr 4, 2020
92c582e
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Apr 7, 2020
951fe08
Restored astrisk match for auditlog
silibum Apr 1, 2020
a7ad39d
Correct, indent and simplify wildcard-compatible auditlog SQL logic.
DL6ER Apr 7, 2020
2a90bb7
Merge pull request #727 from pi-hole/new/audit_wildcards
DL6ER Apr 9, 2020
b7a6fa9
Modify FTL's internal resolver to work in two phases: First, try to o…
DL6ER Apr 9, 2020
dbcf514
Convert port from host to network byte order
DL6ER Apr 9, 2020
d395b3b
Merge pull request #728 from pi-hole/tweak/resolver_try_FTL_first_the…
DL6ER Apr 10, 2020
13edf13
src/dnsmasq/dnsmasq.c: Labeled a lonely #endif
stappersg Apr 6, 2020
b801c4a
Update dnsmasq version to pi-hole-v2.81
DL6ER Apr 12, 2020
7a78a1f
Merge branch 'release/v5.0' into update/dnsmasq
DL6ER Apr 12, 2020
853261b
Merge pull request #652 from pi-hole/update/dnsmasq
PromoFaux Apr 12, 2020
e119ef8
Don't try setsockopt of non-existing NETLINK_NO_ENOBUFS option (fixes…
DL6ER Apr 18, 2020
5ad55e8
Merge pull request #730 from pi-hole/fix/docker_issues
PromoFaux Apr 19, 2020
bdc5ae7
Revert "Don't try setsockopt of non-existing NETLINK_NO_ENOBUFS optio…
DL6ER Apr 20, 2020
73acc1a
Convert failure of setsockopt(..., SOL_NETLINK, NETLINK_NO_ENOBUFS, .…
simonkelley Apr 19, 2020
bcb4789
Make regex matching case-insensitive by default and remove config opt…
DL6ER Apr 20, 2020
1bdb5ce
Automatically block _esni.* subdomains of blocked domains. This can b…
DL6ER Apr 21, 2020
83bf576
Simplify blocking metadata forcing code.
DL6ER Apr 22, 2020
a30e5f3
Add full drop-in replacement mode pihole-FTL can use to mimic the dns…
DL6ER Apr 22, 2020
894a3c7
Add a shortcut for dnsmasq syntax test
DL6ER Apr 22, 2020
fb5cfe0
Do not decide whether we are blocking or not based on the gravity cou…
DL6ER Apr 23, 2020
30ea4e0
Merge pull request #735 from pi-hole/fix/summary_status
DL6ER Apr 28, 2020
06e3a70
Merge pull request #733 from pi-hole/new/block_esni
DL6ER Apr 28, 2020
de5f041
Merge pull request #731 from pi-hole/revert/e119ef8ace49bcc1d0c099257…
DL6ER Apr 28, 2020
fe97633
Merge pull request #732 from pi-hole/tweak/regex_caseinsensitive
DL6ER Apr 28, 2020
5b0cfb5
Merge pull request #736 from pi-hole/new/dnsmasq_dropin_replacement
DL6ER Apr 28, 2020
a00fdfe
Deleted Swag store affiliate link
ArcherN9 May 1, 2020
a4b26c3
Merge pull request #742 from pi-hole/tweak/dakshsrivastava
DL6ER May 3, 2020
61fd420
Invoking free_sqlite3_stmt_vec() on a NULL pointer should be a harmle…
DL6ER May 3, 2020
4750f65
Check for validity of prepared statements before trying to use their …
DL6ER May 5, 2020
01332f6
Merge pull request #744 from pi-hole/fix/free_sqlite3_stmt_vec_NULL
DL6ER May 5, 2020
b2bea81
Fix bit-order in subnet mask generation.
DL6ER May 8, 2020
c499c17
Merge pull request #749 from pi-hole/fix/network-byteorder
DL6ER May 8, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 42 additions & 19 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,65 +1,81 @@
version: 2

.job_template: &job_template
docker:
- image: pihole/ftl-build:$CIRCLE_JOB
.job_steps: &job_steps
steps:
- checkout
- run:
name: "Setup"
command: |
make clean
if [[ $CIRCLE_JOB == *"qemu"* ]] ; then sudo docker run --rm --privileged multiarch/qemu-user-static:register --reset ; fi
- run:
name: "Build"
no_output_timeout: 30m
command: |
BRANCH=$([ -z "$CIRCLE_TAG" ] && echo "$CIRCLE_BRANCH" || echo "master")

make GIT_BRANCH="${BRANCH}" GIT_TAG="${CIRCLE_TAG}"
[[ $CIRCLE_JOB == *"qemu"* ]] && DOCKERIFNEEDED="docker run --rm -v $(pwd):/workspace -w /workspace pihole/ftl-build:arm-qemu "
$DOCKERIFNEEDED make GIT_BRANCH="${BRANCH}" GIT_TAG="${CIRCLE_TAG}" STATIC="${STATIC}"
file pihole-FTL
- run:
name: "Upload"
command: |
FOLDER=$([ -z "$CIRCLE_TAG" ] && echo "$CIRCLE_BRANCH" || echo "$CIRCLE_TAG")
[[ "$CIRCLE_PROJECT_REPONAME" == "FTL" && "$CIRCLE_PROJECT_USERNAME" == "pi-hole" ]] || exit 0
DIR="${CIRCLE_TAG:-${CIRCLE_BRANCH}}"
mv pihole-FTL "${BIN_NAME}"
sha1sum pihole-FTL-* > ${BIN_NAME}.sha1
wget https://ftl.pi-hole.net:8080/FTL-client
chmod +x ./FTL-client
[[ "$CIRCLE_PR_NUMBER" == "" ]] && ./FTL-client "${FOLDER}" "${BIN_NAME}" "${FTL_SECRET}"
[[ "$CIRCLE_PR_NUMBER" == "" ]] && ./FTL-client "${FOLDER}" "${BIN_NAME}.sha1" "${FTL_SECRET}"
rm ./FTL-client
ls -lah .
mkdir -p ~/.ssh/
ssh-keyscan -H $SSH_HOST >> ~/.ssh/known_hosts
sftp -b - $SSH_USER@$SSH_HOST <<< "-mkdir ${DIR}
put ${BIN_NAME}* ${DIR}"
mv "${BIN_NAME}" pihole-FTL
- run:
name: "Test"
command: |
test/run.sh

.docker_template: &docker_template
docker:
- image: pihole/ftl-build:v1.0-$CIRCLE_JOB
<<: *job_steps

jobs:
arm:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-arm-linux-gnueabi"

armhf:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-arm-linux-gnueabihf"

aarch64:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-aarch64-linux-gnu"

x86_64:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-linux-x86_64"

x86_64-musl:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-musl-linux-x86_64"

x86_32:
<<: *job_template
<<: *docker_template
environment:
BIN_NAME: "pihole-FTL-linux-x86_32"

arm-qemu:
machine:
enabled: true
environment:
BIN_NAME: "pihole-FTL-armel-native"
<<: *job_steps

workflows:
version: 2
build:
Expand All @@ -68,6 +84,10 @@ workflows:
filters:
tags:
only: /^v.*/
- arm-qemu:
filters:
tags:
only: /^v.*/
- armhf:
filters:
tags:
Expand All @@ -80,7 +100,10 @@ workflows:
filters:
tags:
only: /^v.*/
# - x86_64-musl
- x86_64-musl:
filters:
tags:
only: /^v.*/
- x86_32:
filters:
tags:
Expand Down
24 changes: 10 additions & 14 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Generated binary files
/obj/
/dnsmasq/obj
# Object files output by the assembler
/build

# Generated binary
pihole-FTL
socket-test

# Versioning files
# Versioning files (generated by Makefile)
version*

# CMake files
Expand All @@ -13,13 +13,9 @@ version*

# IDE files
.idea/
*.sw*
.vscode/

# Test-generated files
/pihole.log
/pihole-FTL.conf
/pihole-FTL.db
/pihole-FTL.log

# aux files
aux/manuf.data
aux/macvendor.db
# MAC->Vendor database files
tools/manuf.data
tools/macvendor.db
6 changes: 0 additions & 6 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +0,0 @@
[submodule "test/libs/bats"]
path = test/libs/bats
url = https://github.com/sstephenson/bats
[submodule "test/libs/bats-support"]
path = test/libs/bats-support
url = https://github.com/ztombol/bats-support
Loading