Age | Commit message (Collapse) | Author |
|
"make check-api-unused" informs us about code that is not used anymore
or that is exported but only used internally. Fix these all over the
place.
|
|
|
|
This prevents enable_name_policy() from invariably returning false when
it matches a zero length string at the end of /proc/cmdline.
|
|
|
|
In case when update of current values is not necessary we still might end up
calling ioctl(), because need_update variable is not explicitly initialized.
|
|
|
|
|
|
|
|
Instead of individually checking for containers in each user do this
once in a new call proc_cmdline() that read the file only if we are not
in a container.
|
|
Should fix linking with old toolchain.
|
|
Move this to src/share/net-util.c, so it can be used elsewhere.
|
|
|
|
Use strtoul(), as scan codes are always positive. On 32 bit architectures
strtol gives wrong results:
strtol("fffffff0", &endptr, 16)
returns 2147483647 instead of 4294967280.
https://launchpad.net/bugs/1247676
|
|
|
|
|
|
|
|
Also reinstate print to kmsg when renaming netif.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We want to load the config in _init, but not connect to the sockets before we are forked.
|
|
We set it to 10 secs (as we are only communicating with the kernel,
it seems we should be able to bail out sooner than sd-bus, which
uses 25).
When passing timout 0, the default is used, use this in link-config.
|
|
|
|
|
|
Not sure if -ENOENT is the correct return value for when no persistent network
name is set, but couldn't think of anything better.
|
|
|
|
|
|
There is no point in keeping one timestamp for each directory, as we only
ever care about the most recent one.
|
|
|
|
Also add shell completions.
|
|
This is private configuraiton, so let's not pollute the namespace (and hence make Debian happy :) ).
|
|
This introduces a new key MACAddressPolicy.
The possible policies are 'persistent' and 'random'.
'persistent' will do nothing if the current address is the hardware address,
but if the hardware does not have an address (or another address is set for
whatever reason), we will generate an address which will be random, but
persistent between boots (based on machineid and persistent netif name).
'random' will do nothing if the kernel already set a random address, otherwise
it will generate a random one and use that instead.
This patch sets MACAddressPolicy=persistent in the default .link file.
|
|
This introduces a new key NamePolicy, which takes an ordered list of naming
policies. The first successful one is applide. If all fail the value of Name
(if any) is used.
The possible policies are 'onboard', 'slot', 'path' and 'mac'.
This patch introduces a default link file, which replaces the equivalent udev
rule.
|
|
|
|
This adds support for setting the mac address, name and mtu.
Example:
[Link]
MTU=1450
MACAddress=98:76:54:32:10:ab
Name=wireless0
|
|
This adds support for setting the link speed, duplex and WakeOnLan
settings.
Example:
[Link]
SpeedMBytes=100
Duplex=half
WakeOnLan=magic
|
|
This tool applies hardware specific settings to network devices before they
are announced via libudev.
Settings that will probably eventually be supported are MTU, Speed,
DuplexMode, WakeOnLan, MACAddress, MACAddressPolicy (e.g., 'hardware',
'synthetic' or 'random'), Name and NamePolicy (replacing our current
interface naming logic). This patch only introduces support for
Description, as a proof of concept.
Some of these settings may later be overriden by a network management
daemon/script. However, these tools should always listen and wait on libudev
before touching a device (listening on netlink is not enough). This is no
different from how things used to be, as we always supported changing the
network interface name from udev rules, which does not work if someone
has already started using it.
The tool is configured by .link files in /etc/net/links/ (with the usual
overriding logic in /run and /lib). The first (in lexicographical order)
matching .link file is applied to a given device, and all others are ignored.
The .link files contain a [Match] section with (currently) the keys
MACAddress, Driver, Type (see DEVTYPE in udevadm info) and Path (this
matches on the stable device path as exposed as ID_PATH, and not the
unstable DEVPATH). A .link file matches a given device if all of the
specified keys do. Currently the keys are treated as plain strings,
but some limited globbing may later be added to the keys where it
makes sense.
Example:
/etc/net/links/50-wireless.link
[Match]
MACAddress=98:f2:e4:42:c6:92
Path=pci-0000:02:00.0-bcma-0
Type=wlan
[Link]
Description=The wireless link
|
|
This matches the bcma support in the network device naming.
Eventually wa want to make sure ID_PATH is equivalent to ID_NET_NAME_PATH,
so we never need to match on the latter.
|
|
I want to use this from a bulitin in a subsequent patch.
|
|
Not that it makes a difference in this builtin, but otherwise /etc/udev/udev.conf is not respected.
|
|
Always use our own macros, and name all our own macros the same style.
|
|
|
|
Since the invention of read-only memory, write-only memory has been
considered deprecated. Where appropriate, either make use of the
value, or avoid writing it, to make it clear that it is not used.
|
|
bInterfaceSubClass == 5 is not a "floppy"; just identify the obsolete
QIC-157 interface as "generic".
|
|
|
|
Always cache the results, and bypass low-level security calls when the
respective subsystem is not enabled.
|
|
|