api: in constructor function calls, always put the returned object pointer first (or second)
Previously the returned object of constructor functions where sometimes returned as last, sometimes as first and sometimes as second parameter. Let's clean this up a bit. Here are the new rules: 1. The object the new object is derived from is put first, if there is any 2. The object we are creating will be returned in the next arguments 3. This is followed by any additional arguments Rationale: For functions that operate on an object we always put that object first. Constructors should probably not be too different in this regard. Also, if the additional parameters might want to use varargs which suggests to put them last. Note that this new scheme only applies to constructor functions, not to all other functions. We do give a lot of freedom for those. Note that this commit only changes the order of the new functions we added, for old ones we accept the wrong order and leave it like that.
This commit is contained in:
@@ -105,8 +105,8 @@ int address_drop(Address *address, Link *link,
|
||||
assert(link->manager);
|
||||
assert(link->manager->rtnl);
|
||||
|
||||
r = sd_rtnl_message_new_addr(link->manager->rtnl, RTM_DELADDR,
|
||||
link->ifindex, address->family, &req);
|
||||
r = sd_rtnl_message_new_addr(link->manager->rtnl, &req, RTM_DELADDR,
|
||||
link->ifindex, address->family);
|
||||
if (r < 0) {
|
||||
log_error("Could not allocate RTM_DELADDR message: %s",
|
||||
strerror(-r));
|
||||
@@ -150,8 +150,8 @@ int address_configure(Address *address, Link *link,
|
||||
assert(link->manager);
|
||||
assert(link->manager->rtnl);
|
||||
|
||||
r = sd_rtnl_message_new_addr(link->manager->rtnl, RTM_NEWADDR,
|
||||
link->ifindex, address->family, &req);
|
||||
r = sd_rtnl_message_new_addr(link->manager->rtnl, &req, RTM_NEWADDR,
|
||||
link->ifindex, address->family);
|
||||
if (r < 0) {
|
||||
log_error("Could not allocate RTM_NEWADDR message: %s",
|
||||
strerror(-r));
|
||||
|
||||
@@ -395,11 +395,11 @@ static int set_hostname(sd_bus *bus, const char *hostname) {
|
||||
|
||||
r = sd_bus_message_new_method_call(
|
||||
bus,
|
||||
&m,
|
||||
"org.freedesktop.hostname1",
|
||||
"/org/freedesktop/hostname1",
|
||||
"org.freedesktop.hostname1",
|
||||
"SetHostname",
|
||||
&m);
|
||||
"SetHostname");
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@@ -446,8 +446,8 @@ static int link_set_mtu(Link *link, uint32_t mtu) {
|
||||
|
||||
log_debug_link(link, "setting MTU: %" PRIu32, mtu);
|
||||
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, RTM_SETLINK,
|
||||
link->ifindex, &req);
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, &req,
|
||||
RTM_SETLINK, link->ifindex);
|
||||
if (r < 0) {
|
||||
log_error_link(link, "Could not allocate RTM_SETLINK message");
|
||||
return r;
|
||||
@@ -813,8 +813,8 @@ static int link_up(Link *link) {
|
||||
|
||||
log_debug_link(link, "bringing link up");
|
||||
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, RTM_SETLINK,
|
||||
link->ifindex, &req);
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, &req,
|
||||
RTM_SETLINK, link->ifindex);
|
||||
if (r < 0) {
|
||||
log_error_link(link, "Could not allocate RTM_SETLINK message");
|
||||
return r;
|
||||
@@ -982,8 +982,8 @@ static int link_getlink(Link *link) {
|
||||
|
||||
log_debug_link(link, "requesting link status");
|
||||
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, RTM_GETLINK,
|
||||
link->ifindex, &req);
|
||||
r = sd_rtnl_message_new_link(link->manager->rtnl, &req,
|
||||
RTM_GETLINK, link->ifindex);
|
||||
if (r < 0) {
|
||||
log_error_link(link, "Could not allocate RTM_GETLINK message");
|
||||
return r;
|
||||
|
||||
@@ -52,7 +52,7 @@ int manager_new(Manager **ret) {
|
||||
|
||||
sd_event_set_watchdog(m->event, true);
|
||||
|
||||
r = sd_rtnl_open(RTMGRP_LINK | RTMGRP_IPV4_IFADDR, &m->rtnl);
|
||||
r = sd_rtnl_open(&m->rtnl, RTMGRP_LINK | RTMGRP_IPV4_IFADDR);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@@ -252,9 +252,10 @@ int manager_udev_listen(Manager *m) {
|
||||
}
|
||||
|
||||
r = sd_event_add_io(m->event,
|
||||
&m->udev_event_source,
|
||||
udev_monitor_get_fd(m->udev_monitor),
|
||||
EPOLLIN, manager_dispatch_link_udev,
|
||||
m, &m->udev_event_source);
|
||||
m);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
|
||||
@@ -94,8 +94,8 @@ static int netdev_enslave_ready(NetDev *netdev, Link* link, sd_rtnl_message_hand
|
||||
assert(link);
|
||||
assert(callback);
|
||||
|
||||
r = sd_rtnl_message_new_link(netdev->manager->rtnl, RTM_SETLINK,
|
||||
link->ifindex, &req);
|
||||
r = sd_rtnl_message_new_link(netdev->manager->rtnl, &req,
|
||||
RTM_SETLINK, link->ifindex);
|
||||
if (r < 0) {
|
||||
log_error_netdev(netdev,
|
||||
"Could not allocate RTM_SETLINK message: %s",
|
||||
@@ -172,7 +172,7 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
|
||||
assert(netdev->manager);
|
||||
assert(netdev->manager->rtnl);
|
||||
|
||||
r = sd_rtnl_message_new_link(netdev->manager->rtnl, RTM_NEWLINK, 0, &req);
|
||||
r = sd_rtnl_message_new_link(netdev->manager->rtnl, &req, RTM_NEWLINK, 0);
|
||||
if (r < 0) {
|
||||
log_error_netdev(netdev,
|
||||
"Could not allocate RTM_NEWLINK message: %s",
|
||||
|
||||
@@ -105,8 +105,8 @@ int route_configure(Route *route, Link *link,
|
||||
assert(link->ifindex > 0);
|
||||
assert(route->family == AF_INET || route->family == AF_INET6);
|
||||
|
||||
r = sd_rtnl_message_new_route(link->manager->rtnl, RTM_NEWROUTE,
|
||||
route->family, &req);
|
||||
r = sd_rtnl_message_new_route(link->manager->rtnl, &req,
|
||||
RTM_NEWROUTE, route->family);
|
||||
if (r < 0) {
|
||||
log_error("Could not create RTM_NEWROUTE message: %s", strerror(-r));
|
||||
return r;
|
||||
|
||||
Reference in New Issue
Block a user