#include <time.h>
#include <sys/wait.h>
#include <sys/stat.h>
-#ifndef __KLIBC__
#include <sys/sysinfo.h>
-#endif
#include "libsysfs/sysfs/libsysfs.h"
#include "list.h"
struct sysfs_attribute *tmpattr;
pos = string;
-
while (1) {
- pos = strchr(string, '%');
- if (pos != NULL) {
- pos[0] = '\0';
- tail = pos+1;
- len = get_format_len(&tail);
- c = tail[0];
- strfieldcpy(temp, tail+1);
- tail = temp;
- } else {
+ pos = strchr(pos, '%');
+ if (pos == NULL)
break;
- }
- dbg("format=%c, string='%s', tail='%s'",c , string, tail);
+ pos[0] = '\0';
+ tail = pos+1;
+ len = get_format_len(&tail);
+ c = tail[0];
+ strfieldcpy(temp, tail+1);
+ tail = temp;
+ dbg("format=%c, string='%s', tail='%s'",c , string, tail);
attr = get_format_attribute(&tail);
+
switch (c) {
case 'b':
if (strlen(udev->bus_id) == 0)
break;
case '%':
strfieldcatmax(string, "%", maxsize);
+ pos++;
break;
default:
dbg("unknown substitution type '%%%c'", c);
found:
apply_format(udev, udev->name, sizeof(udev->name), class_dev, sysfs_device);
+ strfieldcpy(udev->config_file, dev->config_file);
+ udev->config_line = dev->config_line;
if (udev->type == 'n')
goto done;
udev->partitions = dev->partitions;
- strfieldcpy(udev->config_file, dev->config_file);
- udev->config_line = dev->config_line;
/* get permissions given in rule */
set_empty_perms(udev, dev->mode,