Changes in uspace/srv/net/loopip/loopip.c [984a9ba:4c6fd56] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/loopip/loopip.c
r984a9ba r4c6fd56 1 1 /* 2 * Copyright (c) 20 12Jiri Svoboda2 * Copyright (c) 2023 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 41 41 #include <inet/iplink_srv.h> 42 42 #include <inet/addr.h> 43 #include <inet/eth_addr.h> 43 44 #include <io/log.h> 44 45 #include <loc.h> … … 55 56 static errno_t loopip_send6(iplink_srv_t *srv, iplink_sdu6_t *sdu); 56 57 static errno_t loopip_get_mtu(iplink_srv_t *srv, size_t *mtu); 57 static errno_t loopip_get_mac48(iplink_srv_t *srv, addr48_t *mac);58 static errno_t loopip_get_mac48(iplink_srv_t *srv, eth_addr_t *mac); 58 59 static errno_t loopip_addr_add(iplink_srv_t *srv, inet_addr_t *addr); 59 60 static errno_t loopip_addr_remove(iplink_srv_t *srv, inet_addr_t *addr); … … 102 103 static errno_t loopip_init(void) 103 104 { 105 loc_srv_t *srv; 106 104 107 async_set_fallback_port_handler(loopip_client_conn, NULL); 105 108 106 errno_t rc = loc_server_register(NAME );109 errno_t rc = loc_server_register(NAME, &srv); 107 110 if (rc != EOK) { 108 111 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering server."); … … 118 121 const char *svc_name = "net/loopback"; 119 122 service_id_t sid; 120 rc = loc_service_register(svc_name, &sid); 121 if (rc != EOK) { 123 rc = loc_service_register(srv, svc_name, &sid); 124 if (rc != EOK) { 125 loc_server_unregister(srv); 122 126 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering service %s.", 123 127 svc_name); … … 128 132 rc = loc_category_get_id("iplink", &iplink_cat, IPC_FLAG_BLOCKING); 129 133 if (rc != EOK) { 134 loc_service_unregister(srv, sid); 135 loc_server_unregister(srv); 130 136 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed resolving category 'iplink'."); 131 137 return rc; 132 138 } 133 139 134 rc = loc_service_add_to_cat(sid, iplink_cat); 135 if (rc != EOK) { 140 rc = loc_service_add_to_cat(srv, sid, iplink_cat); 141 if (rc != EOK) { 142 loc_service_unregister(srv, sid); 143 loc_server_unregister(srv); 136 144 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed adding %s to category.", 137 145 svc_name); … … 140 148 141 149 fid_t fid = fibril_create(loopip_recv_fibril, NULL); 142 if (fid == 0) 143 return ENOMEM; 150 if (fid == 0) { 151 loc_service_unregister(srv, sid); 152 loc_server_unregister(srv); 153 return ENOMEM; 154 } 144 155 145 156 fibril_add_ready(fid); … … 231 242 } 232 243 233 static errno_t loopip_get_mac48(iplink_srv_t *src, addr48_t *mac)244 static errno_t loopip_get_mac48(iplink_srv_t *src, eth_addr_t *mac) 234 245 { 235 246 log_msg(LOG_DEFAULT, LVL_DEBUG, "loopip_get_mac48()");
Note:
See TracChangeset
for help on using the changeset viewer.