summaryrefslogtreecommitdiffstats
path: root/src/resolve/meson.build (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #33535 from neighbourhoodie/tests/dns-cacheLuca Boccassi2024-07-231-0/+6
|\ | | | | Tests for DnsCache functions
| * resolved: tests for dns_cache_put(); successful A queryJames Coglan2024-07-231-0/+6
| | | | | | | | Co-Authored-By: jan@neighbourhood.ie
* | Merge pull request #33534 from neighbourhoodie/tests/dns-queryLuca Boccassi2024-07-231-0/+11
|\ \ | | | | | | Tests for DnsQuery functions
| * | resolved: tests for dns_query_new()James Coglan2024-07-231-0/+11
| |/
* / resolved: tests for dns_synthesize_answer()James Coglan2024-07-231-0/+11
|/
* resolved: tests for dns_zone_put()James Coglan2024-07-231-0/+11
|
* resolved: tests for dns_search_domain_new()James Coglan2024-07-231-0/+13
|
* Merge pull request #33529 from neighbourhoodie/tests/dns-linkLuca Boccassi2024-07-231-0/+11
|\ | | | | Tests for DNS Link functions
| * resolved: tests for link_new(), link_process_rtnl()James Coglan2024-07-221-0/+11
| |
* | resolved: tests for dns_answer_add(), dns_answer_match_key()James Coglan2024-07-231-0/+3
| |
* | resolved: tests for dns_question_add()James Coglan2024-07-231-0/+3
| |
* | resolved: test for DNS_RESOURCE_RECORD_RDATA()James Coglan2024-07-231-0/+3
| |
* | resolved: tests for dns_packet_set_flags()James Coglan2024-07-221-0/+3
| |
* | resolved: tests for parsing DNS packet headersJames Coglan2024-07-221-0/+3
|/
* gcrypt: dlopenify for libsystemdLuca Boccassi2024-04-031-1/+0
| | | | | | | | | gcrypt is used only for journal sealing operations in libsystemd, so it can be made into a dlopen dependency that is used only on demand. This allows to reduce the footprint of libsystemd in the most common cases. Keep systemd-pull and systemd-resolved with normal linking, as they are executables, and usually built with OpenSSL support anyway.
* test: introduce a dummy DNS test serverFrantisek Sumsal2024-01-101-0/+14
| | | | | | | | | | Introduce a _very_ simple DNS server using our internal DNS-related code, that responds to queries with specifically crafted packets, to cover scenarios that are difficult to reproduce with well-behaving DNS servers. Also, hide the test DNS server behind Knot using the dnsproxy module, so we don't have to switch DNS servers during tests.
* meson: add build option for install path of main config filesFranck Bui2023-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows distros to install configuration file templates in /usr/lib/systemd for example. Currently we install "empty" config files in /etc/systemd/. They serve two purposes: - The file contains commented-out values that show the default settings. - It is easier to edit the right file if it is already there, the user doesn't have to type in the path correctly, and the basic file structure is already in place so it's easier to edit. Things that have happened since this approach was put in place: - We started supporting drop-ins for config files, and drop-ins are the recommended way to create local configuration overrides. - We have systemd-analyze cat-config which takes care of iterating over all possible locations (/etc, /run, /usr, /usr/local) and figuring out the right file. - Because of the first two points, systemd-analyze cat-config is much better, because it takes care of finding all the drop-ins and figuring out the precedence. Looking at files manually is still possible of course, but not very convenient. The disadvantages of the current approach with "empty" files in /etc: - We clutter up /etc so it's harder to see what the local configuration actually is. - If a user edits the file, package updates will not override the file (e.g. systemd.rpm uses %config(noreplace). This means that the "documented defaults" will become stale over time, if the user ever edits the main config file. Thus, I think that it's reasonable to: - Install the main config file to /usr/lib so that it serves as reference for syntax and option names and default values and is properly updated on package upgrades. - Recommend to users to always use drop-ins for configuration and systemd-analyze cat-config to view the documentation. This setting makes this change opt-in. Fixes #18420. [zjs: add more text to the description]
* meson: add comments to compat symlinksZbigniew Jędrzejewski-Szmek2023-09-261-0/+1
|
* meson: use install_emptydir() and drop meson-make-symlink.shYu Watanabe2023-08-081-7/+8
| | | | | | The script is mostly equivalent to 'mkdir -p' and 'ln -sfr'. Let's replace it with install_emptydir() builtin function and inline meson call.
* meson: also merge declarations of fuzzers with other executablesYu Watanabe2023-08-031-25/+13
|
* meson: merge declarations of normal and test executablesYu Watanabe2023-08-031-50/+48
|
* meson: move declarations of resolved and friendsYu Watanabe2023-07-311-2/+40
|
* Drop split-usr and unmerged-usr supportLuca Boccassi2023-07-281-1/+1
| | | | | | | | | | As previously announced, execute order 66: https://lists.freedesktop.org/archives/systemd-devel/2022-September/048352.html The meson options split-usr, rootlibdir and rootprefix become no-ops that print a warning if they are set to anything other than the default values. We can remove them in a future release.
* meson: Introduce userspace depJan Janssen2023-03-101-0/+1
| | | | This will help in a later commit to separate userspace from EFI builds.
* meson: Use dicts for fuzzer definitionsJan Janssen2023-02-211-16/+20
|
* meson: Use dicts for test definitionsJan Janssen2023-02-211-46/+47
| | | | | | | Although this slightly more verbose it makes it much easier to reason about. The code that produces the tests heavily benefits from this. Test lists are also now sorted by test name.
* meson: Do not include headers in source listsJan Janssen2023-01-241-43/+4
| | | | | | Meson+ninja+compiler do this for us and are better at it. https://mesonbuild.com/FAQ.html#do-i-need-to-add-my-headers-to-the-sources-list-like-in-autotools
* tests: fuzz dns resource recordsEvgeny Vereshchagin2022-11-261-0/+5
| | | | | It should help to catch issues like https://github.com/systemd/systemd/issues/19584, https://github.com/systemd/systemd/issues/25449.
* meson: also allow setting GIT_VERSION via templatesZbigniew Jędrzejewski-Szmek2022-04-051-1/+1
| | | | | | | | | GIT_VERSION is not available as a config.h variable, because it's rendered into version.h during builds. Let's rework jinja2 rendering to also parse version.h. No functional change, the new variable is so far unused. I guess this will make partial rebuilds a bit slower, but it's useful to be able to use the full version string.
* meson: move files' closing brace to separate lineZbigniew Jędrzejewski-Szmek2022-03-031-5/+10
|
* meson: do not use split() in file listsZbigniew Jędrzejewski-Szmek2022-03-021-76/+73
| | | | | | | | | | | The approach to use '''…'''.split() instead of a list of strings was initially used when converting from automake because it allowed identical blocks of lines to be used for both, making the conversion easier. But over the years we have been using normal lists more and more, especially when there were just a few filenames listed. This converts the rest. No functional change.
* resolved: Test for DnsStream (plain TCP DNS and DoT)Joan Bruguera2022-01-271-1/+10
| | | | | | | | | | Tests DnsStream event handling, both for plain TCP DNS and DNS over TLS. The DoT test requires the "openssl s_server" command line tool to mock a simple TLS server. Thus the test's TLS part is skipped if openssl it not available. The test works for both DNS_OVER_TLS_USE_GNUTLS and DNS_OVER_TLS_USE_OPENSSL. The DoT case fails due to a bug, which is fixed on the next commit.
* tests: fuzz etc_hosts_parseEvgeny Vereshchagin2022-01-201-0/+7
| | | | That's just a follow-up to https://github.com/systemd/systemd/pull/22179
* meson: Use files() for fuzzersJan Janssen2022-01-111-1/+1
| | | | | | Not having to provide the full path in the source tree is much nicer and the produced lists can also be used anywhere in the source tree.
* meson: Use files() for testsJan Janssen2022-01-111-8/+8
| | | | | | Not having to provide the full path in the source tree is much nicer and the produced lists can also be used anywhere in the source tree.
* meson: fix build with -Dcryptolib=openssl -Ddns-over-tls=falseYu Watanabe2021-12-241-8/+1
| | | | | | | | Previously, when -Ddns-over-tls=false, libopenssl was missing in the dependency of resolved. Also, this drops libgpg_error when it is not necessary. Replaces #21878.
* meson: stop building out convenience libraries by defaultZbigniew Jędrzejewski-Szmek2021-12-161-1/+2
| | | | | | | | | | | | | | | | | The meson default for static_library() are: build_by_default=true, install=false. We never interact with the static libraries, and we only care about them as a stepping-stone towards the installable executables or libraries. Thus let's only build them if they are a dependency of something else we are building. While at it, let's drop install:false, since this appears to be the default. This change would have fixed the issue with lib_import_common failing to build too: we wouldn't attempt to build it. In practice this changes very little, because we generally only declare static libraries where there's something in the default target that will make use of them. But it seems to be a better pattern to set build_by_default to false.
* meson: drop libgcrypt dep from resolved testsZbigniew Jędrzejewski-Szmek2021-12-081-7/+0
| | | | | | | | | Follow-up for pull request #21170. I hoped that we would drop libgcrypt fully and drop all references to the library in meson, but this doesn't seem feasible (because of the use in sd-journal). But let's remove it here, all the resolved code has been switched to work either of the two libraries.
* resolve: Port dnssec verify from gcrypt to openssl^gcryptKevin Kuehler2021-11-301-8/+16
| | | | Co-authored-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
* build: preserve correct mode when generating files via jinja2Christian Brauner2021-11-081-2/+1
| | | | | | | | | When using "capture : true" in custom_target()s the mode of the source file is not preserved when the generated file is not installed and so needs to be tweaked manually. Switch from output capture to creating the target file and copy the permissions from the input file. Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
* meson: use jinja2 for src/resolve/Zbigniew Jędrzejewski-Szmek2021-05-191-10/+9
|
* resolved: split out function to determine the local llmnr hostnameZbigniew Jędrzejewski-Szmek2021-03-261-0/+2
|
* meson: fix build error of test-dnssec-complexYu Watanabe2021-03-211-3/+7
| | | | Fixes #19065.
* resolved: instead of closing DNS UDP transaction fds right-away, add them to ↵Lennart Poettering2021-02-151-0/+2
| | | | | | | | | | | | | a socket "graveyard" The "socket graveyard" shall contain sockets we have sent a question out of, but not received a reply. If we'd close thus sockets immediately when we are not interested anymore, we'd trigger ICMP port unreachable messages once we after all *do* get a reply. Let's avoid that, by leaving the fds open for a bit longer, until a timeout is reached or a reply datagram received. Fixes: #17421
* meson: move test or fuzzer definitions to relevant meson.build in subdirectoriesYu Watanabe2021-01-181-0/+11
|
* meson: slightly disentangle code dependenciesYu Watanabe2021-01-181-1/+3
| | | | But, still sd-id128 is used in src/basic.
* meson: enable several tests even if the relevant features are disabledYu Watanabe2021-01-181-13/+7
|
* meson: fix indentationYu Watanabe2021-01-181-4/+6
|
* meson: drop unnecessary variable declarationsYu Watanabe2021-01-181-4/+2
|
* meson: drop unnecessary loopYu Watanabe2021-01-181-53/+36
|