Вот что у меня работает:
## For accepting syslog info from remote hosts
$template TempAuth, "/var/log/infosys/%HOSTNAME%/%PROGRAMNAME%.log"
$template TempMsg, "/var/log/infosys/%HOSTNAME%/%PROGRAMNAME%.log"
if ($fromhost-ip != "127.0.0.1" ) then ?TempAuth
& ~
if ($fromhost-ip != "127.0.0.1" ) then ?TempMsg
& ~
Опоздал на вечеринку ровно на год. :)Вот основная идея, которая зацикливается на всех объектах класса питания -.
#include <linux/power_supply.h>
static int power_supply_printer(struct device *dev, const void *data)
{
struct power_supply *psy = dev_get_drvdata(dev);
(void)data;
printk(KERN_INF "power-supply = %s\n", psy->desc->name);
/* Return 1 if found, 0 if this is not valid. */
return 0;
}
static __init int my_driver_init(void)
{
struct device *dev;
dev = class_find_device(power_supply_class, NULL, NULL /* data*/, power_supply_printer);
...
}
Эта функция будет перебирать все драйверы power_suppy_class
. Обратите внимание: пока функция обратного вызова -возвращает 0, она будет проверять следующее доступное устройство в этом классе.