chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: rework strappenda(), and rename it strjoina()
[elogind.git]
/
src
/
udev
/
udev-builtin-net_id.c
diff --git
a/src/udev/udev-builtin-net_id.c
b/src/udev/udev-builtin-net_id.c
index 96ac21c16771ff0f25cbb881e2e14049140f4e81..37ff1b800882a2a2d9c13a59d21c35d18bd23682 100644
(file)
--- a/
src/udev/udev-builtin-net_id.c
+++ b/
src/udev/udev-builtin-net_id.c
@@
-149,25
+149,22
@@
static int dev_pci_onboard(struct udev_device *dev, struct netnames *names) {
/* read the 256 bytes PCI configuration space to check the multi-function bit */
static bool is_pci_multifunction(struct udev_device *dev) {
/* read the 256 bytes PCI configuration space to check the multi-function bit */
static bool is_pci_multifunction(struct udev_device *dev) {
- char filename[256];
- FILE *f = NULL;
- char config[64];
- bool multi = false;
+ _cleanup_fclose_ FILE *f = NULL;
+ const char *filename;
+ uint8_t config[64];
-
snprintf(filename, sizeof(filename), "%s/config", udev_device_get_syspath(dev)
);
+
filename = strjoina(udev_device_get_syspath(dev), "/config"
);
f = fopen(filename, "re");
if (!f)
f = fopen(filename, "re");
if (!f)
-
goto out
;
+
return false
;
if (fread(&config, sizeof(config), 1, f) != 1)
if (fread(&config, sizeof(config), 1, f) != 1)
-
goto out
;
+
return false
;
/* bit 0-6 header type, bit 7 multi/single function device */
if ((config[PCI_HEADER_TYPE] & 0x80) != 0)
/* bit 0-6 header type, bit 7 multi/single function device */
if ((config[PCI_HEADER_TYPE] & 0x80) != 0)
- multi = true;
-out:
- if (f)
- fclose(f);
- return multi;
+ return true;
+
+ return false;
}
static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
}
static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
@@
-194,12
+191,12
@@
static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
s = names->pci_path;
l = sizeof(names->pci_path);
if (domain > 0)
s = names->pci_path;
l = sizeof(names->pci_path);
if (domain > 0)
- l = strpcpyf(&s, l, "P%
d
", domain);
- l = strpcpyf(&s, l, "p%
ds%d
", bus, slot);
+ l = strpcpyf(&s, l, "P%
u
", domain);
+ l = strpcpyf(&s, l, "p%
us%u
", bus, slot);
if (func > 0 || is_pci_multifunction(names->pcidev))
if (func > 0 || is_pci_multifunction(names->pcidev))
- l = strpcpyf(&s, l, "f%
d
", func);
+ l = strpcpyf(&s, l, "f%
u
", func);
if (dev_port > 0)
if (dev_port > 0)
- l = strpcpyf(&s, l, "d%
d
", dev_port);
+ l = strpcpyf(&s, l, "d%
u
", dev_port);
if (l == 0)
names->pci_path[0] = '\0';
if (l == 0)
names->pci_path[0] = '\0';
@@
-310,7
+307,7
@@
static int names_usb(struct udev_device *dev, struct netnames *names) {
s[0] = '\0';
interf = s+1;
s[0] = '\0';
interf = s+1;
- /* prefix every port number in the chain with "u"*/
+ /* prefix every port number in the chain with "u"
*/
s = ports;
while ((s = strchr(s, '.')))
s[0] = 'u';
s = ports;
while ((s = strchr(s, '.')))
s[0] = 'u';
@@
-565,5
+562,5
@@
out:
const struct udev_builtin udev_builtin_net_id = {
.name = "net_id",
.cmd = builtin_net_id,
const struct udev_builtin udev_builtin_net_id = {
.name = "net_id",
.cmd = builtin_net_id,
- .help = "
n
etwork device properties",
+ .help = "
N
etwork device properties",
};
};