blob: 6e68a858c736acdd218948e947a82379e1327d48 [file] [log] [blame]
#pragma once
#include <osmocom/core/linuxlist.h>
struct hlr_smsc {
/* g_hlr->smsc_list */
struct llist_head list;
struct hlr *hlr;
/* name (must match the IPA ID tag) */
const char *name;
/* human-readable description */
const char *description;
};
struct hlr_smsc *smsc_find(struct hlr *hlr, const char *name);
struct hlr_smsc *smsc_alloc(struct hlr *hlr, const char *name);
void smsc_del(struct hlr_smsc *smsc);
struct hlr_smsc_route {
/* g_hlr->smsc_routes */
struct llist_head list;
const char *num_addr;
struct hlr_smsc *smsc;
};
struct hlr_smsc_route *smsc_route_find(struct hlr *hlr, const char *num_addr);
struct hlr_smsc_route *smsc_route_alloc(struct hlr *hlr, const char *num_addr,
struct hlr_smsc *smsc);
void smsc_route_del(struct hlr_smsc_route *rt);
void forward_mo_sms(struct osmo_gsup_req *req);