File: case_sess.h

package info (click to toggle)
openser 1.1.0-9etch1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 9,828 kB
  • ctags: 11,809
  • sloc: ansic: 120,528; sh: 5,249; yacc: 1,716; makefile: 1,261; php: 656; perl: 205; sql: 190
file content (88 lines) | stat: -rw-r--r-- 2,244 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/* 
 * $Id: case_sess.h,v 1.1 2006/02/28 18:56:09 bogdan_iancu Exp $
 * 
 * Session-Expires Header Field Name Parsing Macros
 *
 * Copyright (c) 2006 SOMA Networks, Inc. <http://www.somanetworks.com/>
 *
 * This file is part of openser, a free SIP server.
 *
 * openser is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version
 *
 * openser is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License 
 * along with this program; if not, write to the Free Software 
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 * History:
 * --------
 * 2006-02-17 Initial revision (dhsueh@somanetworks.com)
 */

#ifndef CASE_SESS_H
#define CASE_SESS_H 1


#ifndef RES_CASE
#define RES_CASE	 						\
	switch( LOWER_DWORD(val) ) {			\
	case _res1_:							\
		hdr->type = HDR_SESSION_EXPIRES_T;	\
		hdr->name.len = 15;					\
		return p + 4;						\
	case _res2_:							\
		hdr->type = HDR_SESSION_EXPIRES_T;	\
		p += 4;								\
		goto dc_end;						\
	}
#else
#error existing #define of RES_CASE currently needed for \
	parsing Session-Expires
#endif

#ifndef EXPI_CASE
#define EXPI_CASE	 					\
	if ( LOWER_DWORD(val) == _expi_ ) {	\
		p += 4;							\
		val = READ(p);					\
		RES_CASE;						\
		goto other;						\
	}
#else
#error existing #define of EXPI_CASE currently needed for \
	parsing Session-Expires
#endif

#ifndef ION__CASE
#define ION__CASE						\
	if ( LOWER_DWORD(val) == _ion__ ) {	\
		p += 4;							\
		val = READ(p);					\
		EXPI_CASE;						\
		goto other;						\
	}
#else
#error existing #define of ION__CASE currently needed for \
	parsing Session-Expires
#endif

#ifndef sess_CASE
#define sess_CASE	\
	p += 4;			\
	val = READ(p);	\
	ION__CASE;		\
	goto other;
#else
#error existing #define of sess_CASE currently needed for \
	parsing Session-Expires
#endif


#endif /* ! CASE_SESS_H */