Loading...
Searching...
No Matches
ipa.c File Reference

OpenBSC Abis input driver for ip.access. More...

`#include "config.h"`
`#include <unistd.h>`
`#include <stdint.h>`
`#include <errno.h>`
`#include <stdlib.h>`
`#include <sys/types.h>`
`#include <osmocom/core/byteswap.h>`
`#include <osmocom/core/msgb.h>`
`#include <osmocom/core/talloc.h>`
`#include <osmocom/core/logging.h>`
`#include <osmocom/core/macaddr.h>`
`#include <osmocom/core/select.h>`
`#include <osmocom/gsm/tlv.h>`
`#include <osmocom/gsm/protocol/ipaccess.h>`
`#include <osmocom/gsm/ipa.h>`

## Macros

#define | IPA_ALLOC_SIZE 1200
#define | IPA_STRING_MAX 64

## Functions

const char * | ipa_ccm_idtag_name (uint8_t tag)
int | ipa_ccm_idtag_parse (struct tlv_parsed *dec, unsigned char *buf, int len)
| Parse the payload part of an IPA CCM ID GET, return tlv_parsed format.
int | ipa_ccm_idtag_parse_off (struct tlv_parsed *dec, unsigned char *buf, int len, const int len_offset)
| Parse the payload part of an IPA CCM ID GET, return tlv_parsed format.
int | ipa_ccm_id_get_parse (struct tlv_parsed *dec, const uint8_t *buf, unsigned int len)
| Parse the payload part of an IPA CCM ID GET, return tlv_parsed format.
int | ipa_ccm_id_resp_parse (struct tlv_parsed *dec, const uint8_t *buf, unsigned int len)
| Parse the payload part of an IPA CCM ID RESP, return tlv_parsed format.
int | ipa_parse_unitid (const char *str, struct ipaccess_unit *unit_data)
int | ipa_ccm_tlv_to_unitdata (struct ipaccess_unit *ud, const struct tlv_parsed *tp)
struct msgb * | ipa_ccm_make_id_resp (const struct ipaccess_unit *dev, const uint8_t *ies_req, unsigned int num_ies_req)
| Generate IPA CCM ID RESP based on list of IEs.
struct msgb * | ipa_ccm_make_id_resp_from_req (const struct ipaccess_unit *dev, const uint8_t *data, unsigned int len)
| Generate IPA CCM ID RESP based on requets payload.
int | ipa_send (int fd, const void *msg, size_t msglen)
int | ipa_ccm_send_pong (int fd)
int | ipa_ccm_send_id_ack (int fd)
int | ipa_ccm_send_id_req (int fd)
int | ipa_ccm_rcvmsg_base (struct msgb *msg, struct osmo_fd *bfd)
int | ipa_ccm_rcvmsg_bts_base (struct msgb *msg, struct osmo_fd *bfd)
void | ipa_prepend_header_ext (struct msgb *msg, int proto)
void | ipa_prepend_header (struct msgb *msg, int proto)
struct msgb * | ipa_msg_alloc (int headroom)

## Variables

static const uint8_t | ipa_pong_msg []
static const uint8_t | ipa_id_ack_msg []
static const uint8_t | ipa_id_req_msg []
static const char * | idtag_names []

## Detailed Description

OpenBSC Abis input driver for ip.access.