OpenSS7
SS7 for the
Common Man

© Copyright 1997-2004,OpenSS7 Corporation, All Rights Reserved.
Last modified:

Home Overview Status News Documentation Resources About
   
 Overview
 Status
 News
 Documentation
 Resources
 About

   
Home Index Prev Next More Download Info FAQ Mail   Home -> Resources -> Browse Source -> strss7/drivers/slsi/sls_hmcg.h


File /code/strss7/drivers/slsi/sls_hmcg.h


#ident "@(#) $Id: sls_hmcg.h,v 0.8.2.1 2002/10/18 02:40:37 brian Exp $"

#ifndef __SLS_HMCG_H__
#define __SLS_HMCG_H__

/*
 *  Referenced functions.
 */

static int lk_build_msu(mblk_t * mp);

static inline void ls_rtcc_hmcg_send_transfer_controlled_message(ls_t * ls, mblk_t * mp);
static inline void lk_l2_hmcg_message_for_transmission(lk_t * lk, mblk_t * mp);

/*
 *  Forward declarations.
 */

static inline void lk_hmcg_hmrt_message(lk_t * lk, mblk_t * mp);	/* from MTP */

/*
 *  Consistent with the link set and link portions of:
 *
 *      Signalling Message Handling (SMH)
 *      Signalling Link Congestion (HMCG)
 *      Figure 26a/Q.704
 *
 *  Note:- this state machine has only one state and is therefore just a
 *  collection of function calls.  These functions are only called by the MTP
 *  route set and route state machines and only recheck the link set and link
 *  congestion status to avoid transient conditions where the link congestion
 *  status has not yet been communicated to the sender.
 */

static inline void lk_hmcg_hmrt_message(lk_t * lk, mblk_t * mp)
{
	ls_t *ls = lk->module;
	union LS_primitives *p = (union LS_primitives *) mp->b_rptr;
	int P = p->mh.mp;

	if (P < ls->statem.cong_level || P < lk->statem.cong_level) {
		ls_rtcc_hmcg_send_transfer_controlled_message(ls, mp);
		if (P < ls->statem.disc_level || P < lk->statem.disc_level) {
			freemsg(mp);
			return;
		}
	}
	if (lk_build_msu(mp);) {
		/* encoding of the message was unsuccessful, discard and continue */
		/* we should log this error */
		freemsg(mp);
		return;
	}
	lk_l2_hmcg_message_for_transmission(lk, mp);
}

#endif				/* __SLS_HMCG_H__ */


Home Index Prev Next More Download Info FAQ Mail   Home -> Resources -> Browse Source -> strss7/drivers/slsi/sls_hmcg.h

OpenSS7
SS7 for the
Common Man
Home Overview Status News Documentation Resources About

© Copyright 1997-2004,OpenSS7 Corporation, All Rights Reserved.
Last modified: