Changeset 1c6c3e1d in mainline for uspace/srv/net/loopip/loopip.c


Ignore:
Timestamp:
2023-10-22T17:55:33Z (7 months ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
ticket/834-toolchain-update
Children:
350ec74
Parents:
315d487 (diff), 133461c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' into ticket

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/loopip/loopip.c

    r315d487 r1c6c3e1d  
    11/*
    2  * Copyright (c) 2021 Jiri Svoboda
     2 * Copyright (c) 2023 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    103103static errno_t loopip_init(void)
    104104{
     105        loc_srv_t *srv;
     106
    105107        async_set_fallback_port_handler(loopip_client_conn, NULL);
    106108
    107         errno_t rc = loc_server_register(NAME);
     109        errno_t rc = loc_server_register(NAME, &srv);
    108110        if (rc != EOK) {
    109111                log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering server.");
     
    119121        const char *svc_name = "net/loopback";
    120122        service_id_t sid;
    121         rc = loc_service_register(svc_name, &sid);
    122         if (rc != EOK) {
     123        rc = loc_service_register(srv, svc_name, &sid);
     124        if (rc != EOK) {
     125                loc_server_unregister(srv);
    123126                log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering service %s.",
    124127                    svc_name);
     
    129132        rc = loc_category_get_id("iplink", &iplink_cat, IPC_FLAG_BLOCKING);
    130133        if (rc != EOK) {
     134                loc_service_unregister(srv, sid);
     135                loc_server_unregister(srv);
    131136                log_msg(LOG_DEFAULT, LVL_ERROR, "Failed resolving category 'iplink'.");
    132137                return rc;
    133138        }
    134139
    135         rc = loc_service_add_to_cat(sid, iplink_cat);
    136         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);
    137144                log_msg(LOG_DEFAULT, LVL_ERROR, "Failed adding %s to category.",
    138145                    svc_name);
     
    141148
    142149        fid_t fid = fibril_create(loopip_recv_fibril, NULL);
    143         if (fid == 0)
    144                 return ENOMEM;
     150        if (fid == 0) {
     151                loc_service_unregister(srv, sid);
     152                loc_server_unregister(srv);
     153                return ENOMEM;
     154        }
    145155
    146156        fibril_add_ready(fid);
Note: See TracChangeset for help on using the changeset viewer.