view libutil/mncc_debug.c @ 152:7176dc850d7a

sip-in hold/retr error handling: simply send BYE Because we know that the SIP state is CONNECTED at the time of any such error event, we can call initiate_bye() instead of disconnect_sip(), and thereby get rid of struct gsm_mncc_cause which will never be used in this scenario anyway.
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 11 Oct 2022 16:11:21 -0800
parents 660126bd5f59
children
line wrap: on
line source

/* MNCC debug functions */

#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <stdint.h>
#include "../include/mncc.h"

char *
mncc_msg_name(msgtype)
{
	static char buf[32];

	switch (msgtype) {
	case MNCC_SETUP_REQ:
		return "MNCC_SETUP_REQ";
	case MNCC_SETUP_IND:
		return "MNCC_SETUP_IND";
	case MNCC_SETUP_RSP:
		return "MNCC_SETUP_RSP";
	case MNCC_SETUP_CNF:
		return "MNCC_SETUP_CNF";
	case MNCC_SETUP_COMPL_REQ:
		return "MNCC_SETUP_COMPL_REQ";
	case MNCC_SETUP_COMPL_IND:
		return "MNCC_SETUP_COMPL_IND";
	case MNCC_CALL_CONF_IND:
		return "MNCC_CALL_CONF_IND";
	case MNCC_CALL_PROC_REQ:
		return "MNCC_CALL_PROC_REQ";
	case MNCC_PROGRESS_REQ:
		return "MNCC_PROGRESS_REQ";
	case MNCC_ALERT_REQ:
		return "MNCC_ALERT_REQ";
	case MNCC_ALERT_IND:
		return "MNCC_ALERT_IND";
	case MNCC_NOTIFY_REQ:
		return "MNCC_NOTIFY_REQ";
	case MNCC_NOTIFY_IND:
		return "MNCC_NOTIFY_IND";
	case MNCC_DISC_REQ:
		return "MNCC_DISC_REQ";
	case MNCC_DISC_IND:
		return "MNCC_DISC_IND";
	case MNCC_REL_REQ:
		return "MNCC_REL_REQ";
	case MNCC_REL_IND:
		return "MNCC_REL_IND";
	case MNCC_REL_CNF:
		return "MNCC_REL_CNF";
	case MNCC_FACILITY_REQ:
		return "MNCC_FACILITY_REQ";
	case MNCC_FACILITY_IND:
		return "MNCC_FACILITY_IND";
	case MNCC_START_DTMF_IND:
		return "MNCC_START_DTMF_IND";
	case MNCC_START_DTMF_RSP:
		return "MNCC_START_DTMF_RSP";
	case MNCC_START_DTMF_REJ:
		return "MNCC_START_DTMF_REJ";
	case MNCC_STOP_DTMF_IND:
		return "MNCC_STOP_DTMF_IND";
	case MNCC_STOP_DTMF_RSP:
		return "MNCC_STOP_DTMF_RSP";
	case MNCC_MODIFY_REQ:
		return "MNCC_MODIFY_REQ";
	case MNCC_MODIFY_IND:
		return "MNCC_MODIFY_IND";
	case MNCC_MODIFY_RSP:
		return "MNCC_MODIFY_RSP";
	case MNCC_MODIFY_CNF:
		return "MNCC_MODIFY_CNF";
	case MNCC_MODIFY_REJ:
		return "MNCC_MODIFY_REJ";
	case MNCC_HOLD_IND:
		return "MNCC_HOLD_IND";
	case MNCC_HOLD_CNF:
		return "MNCC_HOLD_CNF";
	case MNCC_HOLD_REJ:
		return "MNCC_HOLD_REJ";
	case MNCC_RETRIEVE_IND:
		return "MNCC_RETRIEVE_IND";
	case MNCC_RETRIEVE_CNF:
		return "MNCC_RETRIEVE_CNF";
	case MNCC_RETRIEVE_REJ:
		return "MNCC_RETRIEVE_REJ";
	case MNCC_USERINFO_REQ:
		return "MNCC_USERINFO_REQ";
	case MNCC_USERINFO_IND:
		return "MNCC_USERINFO_IND";
	case MNCC_REJ_REQ:
		return "MNCC_REJ_REQ";
	case MNCC_REJ_IND:
		return "MNCC_REJ_IND";
	case MNCC_BRIDGE:
		return "MNCC_BRIDGE";
	case MNCC_RTP_CREATE:
		return "MNCC_RTP_CREATE";
	case MNCC_RTP_CONNECT:
		return "MNCC_RTP_CONNECT";
	case MNCC_RTP_FREE:
		return "MNCC_RTP_FREE";
	case MNCC_SOCKET_HELLO:
		return "MNCC_SOCKET_HELLO";
	default:
		sprintf(buf, "MNCC msgtype 0x%x", msgtype);
		return buf;
	}
}