• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Data Structures
  • Files
  • Directories
  • File List
  • Globals

lvalue.h

Go to the documentation of this file.
00001 /* 
00002  * $Id$
00003  * 
00004  * Copyright (C) 2008 iptelorg GmbH
00005  *
00006  * Permission to use, copy, modify, and distribute this software for any
00007  * purpose with or without fee is hereby granted, provided that the above
00008  * copyright notice and this permission notice appear in all copies.
00009  *
00010  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
00011  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
00012  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
00013  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00014  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00015  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
00016  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00017  */
00022 /* 
00023  * History:
00024  * --------
00025  *  2008-11-30  initial version (andrei)
00026  */
00027 
00028 #ifndef __lvalue_h_
00029 #define __lvalue_h_
00030 
00031 #include "rvalue.h"
00032 #include "usr_avp.h"
00033 #include "pvar.h"
00034 #include "parser/msg_parser.h"
00035 #include "action.h"
00036 
00037 union lval_u{
00038         pv_spec_t pvs;
00039         avp_spec_t avps;
00040 };
00041 
00042 enum lval_type{
00043         LV_NONE, LV_AVP, LV_PVAR
00044 };
00045 
00046 struct lvalue{
00047         enum lval_type type;
00048         union lval_u lv;
00049 };
00050 
00051 /* lval operators */
00052 #define EQ_T 254 /* k compatibility */
00053 
00054 
00055 
00065 int lval_assign(struct run_act_ctx* h, struct sip_msg* msg, 
00066                                 struct lvalue* lv, struct rval_expr* rve);
00067 #endif /* __lvalue_h_*/

Generated on Tue May 22 2012 13:10:10 for SIP Router by  doxygen 1.7.1