#ifndef _GPRS__H
#define	_GPRS__H

#include    "../include/includes.h"
#include    "../include/ppsm.h"
#include    "../include/ramdata.h"
#include    "../include/ppsinf.h"
#include    "../include/message.h"
#include    "../include/iofunc.h"
#include    "../include/version.h"
#include    "../include/pps_public.h"
#include    "../include/cdrme.h"
#include 	"../include/param.h"


#include 	"../include/ppsMibTable.h"
#include	 "../include/mfunc.h"

#include    "../../../../plat/radius/src/include/radius_if.h"

extern char logMsisdn[18];
extern int	logMsgFlag;


#define INIT_QID						1
#define QID_DUAL_PLAT_POIND				30000
#define	MAX_PPAQ_EACH_ACCESS_REQUEST	1

#define	GPRS_O_OPEN						0x88
#define	VAS_O_OPEN						0x89

#define	BYTES_PER_KB					1024


enum{
	PPS_RADIUS_NO_CMD,
	PPS_RADIUS_NEW_SERVICE,
	PPS_RADIUS_THRESHOLD_REACHED,
	PPS_RADIUS_QUOTA_REACHED,
	PPS_RADIUS_REMOTE_DISC,
	PPS_RADIUS_CLIENT_SERVICE_TER,
	PPS_RADIUS_ACCESS_SERVICE_TER,
	PPS_RADIUS_SERVICE_NOT_EST,
	PPS_RADIUS_DISCONNECT_ACK,
	PPS_RADIUS_DISCONNECT_NAK,
};

enum{
	PPS_POSTPAID_USER,
	PPS_PREPAID_USER,	
};

enum pps_gprs_process_state{
	pps_gprs_idle,
	pps_gprs_postpaid,
	pps_gprs_prepaid,
	
	pps_gprs_wait_request,	
	pps_gprs_wait_quota_reached,
	pps_gprs_inactive_timeout,
	pps_gprs_access_timeout,
	pps_gprs_wait_terminate,
	pps_gprs_service_terminate,

};

enum _VAS_STATE{
	VAS_STATE_IDLE,
	VAS_STATE_AUTH,
	VAS_STATE_CHARGE,
	VAS_STATE_ACCEPT,
	VAS_STATE_REJECT,
	VAS_STATE_TERMINATE,
};//VAS_STATE;	


#endif


