if (p->fd >= 0)
continue;
- if (p->type == SOCKET_SOCKET) {
+ switch (p->type) {
+
+ case SOCKET_SOCKET:
if (!know_label) {
/* Figure out label, if we don't it know
p->fd = r;
socket_apply_socket_options(s, p->fd);
socket_symlink(s);
+ break;
- } else if (p->type == SOCKET_SPECIAL) {
+ case SOCKET_SPECIAL:
p->fd = special_address_create(p->path);
if (p->fd < 0) {
r = p->fd;
goto rollback;
}
+ break;
- } else if (p->type == SOCKET_FIFO) {
+ case SOCKET_FIFO:
p->fd = fifo_address_create(
p->path,
socket_apply_fifo_options(s, p->fd);
socket_symlink(s);
+ break;
- } else if (p->type == SOCKET_MQUEUE) {
+ case SOCKET_MQUEUE:
p->fd = mq_address_create(
p->path,
r = p->fd;
goto rollback;
}
+ break;
- } else if (p->type == SOCKET_USB_FUNCTION) {
+ case SOCKET_USB_FUNCTION:
p->fd = ffs_address_create(p->path);
if (p->fd < 0) {
r = ffs_dispatch_eps(p);
if (r < 0)
goto rollback;
- } else
+
+ break;
+
+ default:
assert_not_reached("Unknown port type");
+ }
}
return 0;