summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* networkctl: introduce --json option for "status" and "list" commandsYu Watanabe2021-05-144-2/+153
| | | | | | When `--json` option is specified, "status" and "list" commands gives the same information, as originally "list" just gives partial information of "status" in different format.
* json: make JSON_VARIANT_ARRAY/OBJECT_FOREACH() nestableYu Watanabe2021-05-141-13/+17
|
* networkctl: use table_set_empty_string()Yu Watanabe2021-05-141-3/+5
|
* network: introduce Describe() method for manager and linksYu Watanabe2021-05-146-0/+227
|
* udev,network: make link_get_type_string() return negative errno on failureYu Watanabe2021-05-147-24/+46
| | | | And make net_match_config() propagate the error.
* network: move and rename network_get() -> link_get_network()Yu Watanabe2021-05-144-86/+59
| | | | | This also drops test_network_get(). But it tests almost nothing. So, it should be ok to not re-implement something like test_link_get_network().
* run: update checks to allow running with a user's busAnita Zhang2021-05-131-5/+5
| | | | | | systemd-run is documented to as being able to connect and run on a specific user bus with "--user --machine=lennart@.host" arguments. This PR updates some logic that prevented this from working.
* tools/make-directive-index: parallelizeZbigniew Jędrzejewski-Szmek2021-05-131-21/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I occasionally do 'build/man/man systemd.directives' when working on man pages, and it's annoying slow. By paralellizing the parsing of xml, we can make it a bit faster. This is still rather innefficient. Only the parsing part is serialized, xml is still produced serially at the end, which is hard to avoid. $ ninja -C build man/systemd.directives.xml before: 8.20s user 0.21s system 99% cpu 8.460 total 8.33s user 0.18s system 98% cpu 8.619 total 8.72s user 0.19s system 98% cpu 9.019 total after: 13.99s user 0.73s system 345% cpu 4.262 total 14.15s user 0.35s system 348% cpu 4.161 total 14.33s user 0.35s system 339% cpu 4.321 total I.e. it uses almost twice as much cpu, but cuts the wallclock time down (on a 2-core/4-thread cpu) to about half too, which is an overall win if you're just trying to render the man page. The change from list and .append() to set and .add() is something that could have been done before too, but it's noticable now. It cuts down on the serialization/deserialization time (about .2s).
* Add Microsoft Pro Intellimouse MOUSE_DPI to hwdbSimon Watts2021-05-131-0/+4
| | | | | | - Internet specifications give 1600 DPI @ 1000Hz for this sensor - Confirmed experimentally via `mouse-dpi-tool` - vid, pid, and name match string from `mouse-dpi-tool`
* Update Korean translation (#19083)Seong-ho Cho2021-05-131-49/+49
| | | Co-authored-by: Seong-ho Cho <shcho@gnome.org>
* Merge pull request #19590 from keszybz/comments-and-service-modernizationYu Watanabe2021-05-137-45/+36
|\ | | | | Comments and service modernization
| * core/service: modernizationZbigniew Jędrzejewski-Szmek2021-05-121-12/+9
| |
| * test-bpf-foreign-programs: fix messageZbigniew Jędrzejewski-Szmek2021-05-121-1/+1
| |
| * docs/HACKING: wrap long linesZbigniew Jędrzejewski-Szmek2021-05-121-10/+10
| |
| * sd-event: tweak commentsZbigniew Jędrzejewski-Szmek2021-05-121-4/+3
| |
| * timedated: make ntp_synced() staticZbigniew Jędrzejewski-Szmek2021-05-123-18/+13
| | | | | | | | No need to have this in basic.
* | Merge pull request #19567 from poettering/ipv4-ipv6-lowercaseZbigniew Jędrzejewski-Szmek2021-05-1210-38/+51
|\ \ | | | | | | various follow-ups to socket-bind logic
| * | cgroup: drop explicit NULL comparisonsLennart Poettering2021-05-111-1/+1
| | |
| * | tree-wide: move variables to innermost scopeLennart Poettering2021-05-111-3/+1
| | |
| * | tree-wide: use af_to_ipv4_ipv6() + af_from_ipv4_ipv6() helpers at various placesLennart Poettering2021-05-116-27/+27
| | |
| * | af-list: add helpers mapping AF_INET/AF_INET6 to "ipv4"/"ipv6"Lennart Poettering2021-05-112-0/+15
| | |
| * | socket-bind: use lowercase "ipv4"/"ipv6" spellingLennart Poettering2021-05-116-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In most of our codebase when we referenced "ipv4" and "ipv6" on the right-hand-side of an assignment, we lowercases it (on the left-hand-side we used CamelCase, and thus "IPv4" and "IPv6"). In particular all across the networkd codebase the various "per-protocol booleans" use the lower-case spelling. Hence, let's use lower-case for SocketBindAllow=/SocketBindDeny= too, just make sure things feel like they belong together better. (This work is not included in any released version, hence let's fix this now, before any fixes in this area would be API breakage) Follow-up for #17655
* | | resolved.conf.in: add missing Quad9 serversMichael Catanzaro2021-05-121-1/+1
| | | | | | | | | The example configuration is missing half of Quad9's addresses.
* | | resolved: be more careful with weird links with low MTUsLennart Poettering2021-05-121-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently CAN links will show up in rtnetlink with very low MTUs. We shouldn't consider them relevant if no IP is spoken over them, since these MTUs are irrelevant for us then. Hence, let's check if there's an address assigned to the link before considering its MTU. As additional safety net filter out MTUs smaller than the minimum DNS packet size, too. Finally, in case we don't find any suitable interface MTU, let's default to 1500 as the generic Ethernet MTU. Fixes: #19396
* | | pam: fix typo try_authtok → use_authtokLennart Poettering2021-05-123-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | This was a copy/paste mistae apparently, there's not "try_authtok" and this was supposed to copy what Fedora uses, which uses "use_authtok" correctly. Hence adjust this. Fixes: #19369
* | | Merge pull request #19533 from yuwata/network-queueZbigniew Jędrzejewski-Szmek2021-05-1230-1156/+2124
|\ \ \ | |_|/ |/| | network: introduce queue to configure address, route, etc
| * | test-network: wait for the interfaces are configured after reloading ↵Yu Watanabe2021-05-121-0/+4
| | | | | | | | | | | | .network files
| * | test-network: wait for the intreface is configured if it is expectedYu Watanabe2021-05-121-6/+2
| | |
| * | network: make route_configure() return all created routesYu Watanabe2021-05-121-12/+38
| | |
| * | network: make log_route_debug() show multipath routes and Gateway=_dhcp4 or ↵Yu Watanabe2021-05-121-6/+27
| | | | | | | | | | | | _ipv6ra
| * | network: use request queue to configure addresses, routes, and nexthopsYu Watanabe2021-05-1216-572/+896
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why is this necessary? Several examples below. - When a route sets prefsrc, then the address must be already assigned (see issue #19285), and also it must be ready if IPv6. - When a route or nexthop sets gateway, then the address must be reachable. - When a route sets nexthop ID, then the corresponding nexthop must be assigned. - When a route sets multipath routes on another interface, then the interface must exist and be ready to configure. - When configuring address, the same address must not be under removing (see issue #18108). Etc,. etc,... So, this makes all requests about addresses, routes, and nethops are once stored in the queue, and will be processed when they are ready to configure. Fixes #18108 and #19285.
| * | network: use request queue to configure neighborsYu Watanabe2021-05-126-36/+94
| | |
| * | network: use request queue to configure routing policy rulesYu Watanabe2021-05-128-63/+144
| | |
| * | network: introduce link_is_ready_to_configure() helper functionYu Watanabe2021-05-122-0/+21
| | | | | | | | | | | | This will be used in later commits.
| * | network: add skeleton of request queueYu Watanabe2021-05-126-2/+192
| | | | | | | | | | | | This will be used in later commits.
| * | network: nexthop: add NextHop object before sending netlink requestYu Watanabe2021-05-121-6/+6
| | | | | | | | | | | | | | | Otherwise, if nexthop_add() fails, then assertion about nexthop_messages in static_nexthop_handler() will be triggered.
| * | network: split out common part of route or address handlersYu Watanabe2021-05-128-171/+155
| | |
| * | network: change order of dropping network configsYu Watanabe2021-05-121-8/+8
| | | | | | | | | | | | | | | As routes may requires nexthops and addresses, nexthops may requires addresses.
| * | network: simplify and rename routing_policy_rule_copy()Yu Watanabe2021-05-121-38/+20
| | |
| * | network: introduce route_dup()Yu Watanabe2021-05-122-0/+39
| | | | | | | | | | | | The function will be used in later commits.
| * | sd-netlink: introduce multipath_route_dup()Yu Watanabe2021-05-122-0/+31
| | | | | | | | | | | | The function will be used in later commits.
| * | network: introduce manager_address_is_reachable()Yu Watanabe2021-05-122-0/+41
| | | | | | | | | | | | The function will be used in later commits.
| * | network: introduce link_has_route()Yu Watanabe2021-05-122-5/+68
| | | | | | | | | | | | The function will be used in later commits.
| * | network: delay resolving interface specifier in MultiPathRoute=Yu Watanabe2021-05-123-29/+53
| | | | | | | | | | | | The interface may not exist when .network files are loaded.
| * | network: introduce manager_has_address()Yu Watanabe2021-05-122-0/+58
| | | | | | | | | | | | The function will be used in later commits.
| * | ordered-set: introduce ordered_set_clear/free_with_destructor()Yu Watanabe2021-05-121-0/+11
| | |
| * | hashmap,set: make hashmap_clear_with_destructor() or friends saferYu Watanabe2021-05-122-23/+20
| | |
| * | network: use IPV4_ADDRESS_FMT_STR/VAL macros and in6_addr_to_string() or friendsYu Watanabe2021-05-125-128/+121
| | |
| * | in-addr-util: move IPV4_ADDRESS_FMT_STR/VAL macros from networkd-address.hYu Watanabe2021-05-122-7/+7
| | |
| * | in-addr-util: introduce in6_addr_to_string() or friendsYu Watanabe2021-05-121-0/+6
| | |