Navigation



Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • include/freeDiameter/libfdproto.h

    r1281 r1304  
    110110
    111111#define DIAMETER_PORT           3868
    112 #define DIAMETER_SECURE_PORT    5658
     112#define DIAMETER_SECURE_PORT    5868
    113113
    114114
     
    290290#endif /* __PRETTY_FUNCTION__ */
    291291
    292 /* A version of __FILE__ without the full path */
     292/* A version of __FILE__ without the full path. This is specific to each C file being compiled */
    293293static char * file_bname = NULL;
    294294static char * file_bname_init(char * full) { file_bname = basename(full); return file_bname; }
     
    298298
    299299/* In DEBUG mode, we add meta-information along each trace. This makes multi-threading problems easier to debug. */
    300 #if (defined(DEBUG) && !defined(DEBUG_WITHOUT_META))
     300#if (defined(DEBUG) && defined(DEBUG_WITH_META))
    301301# define STD_TRACE_FMT_STRING "pid:%s in %s@%s:%d: "
    302302# define STD_TRACE_FMT_ARGS   , ((char *)pthread_getspecific(fd_log_thname) ?: "unnamed"), __PRETTY_FUNCTION__, __STRIPPED_FILE__, __LINE__
    303 #else /* DEBUG && !DEBUG_WITHOUT_META */
     303#else /* DEBUG && DEBUG_WITH_META */
    304304# define STD_TRACE_FMT_STRING ""
    305305# define STD_TRACE_FMT_ARGS
    306 #endif /* DEBUG && !DEBUG_WITHOUT_META */
     306#endif /* DEBUG && DEBUG_WITH_META */
    307307
    308308/*************************
     
    12591259typedef int (*dict_avpdata_encode) (void * data, union avp_value * val);
    12601260
     1261/*
     1262 * CALLBACK:    dict_avpdata_check
     1263 *
     1264 * PARAMETERS:
     1265 *   val        : Pointer to the AVP value that was received and needs to be sanity checked.
     1266 *   data      : a parameter stored in the type structure (to enable more generic check functions)
     1267 *   error_msg: upon erroneous value, a string describing the error can be returned here (it will be strcpy by caller). This description will be returned in the error message, if any.
     1268 *
     1269 * DESCRIPTION:
     1270 *   This callback can be provided with a derived type in order to improve the operation of the
     1271 *  fd_msg_parse_dict function. When this callback is present, the value of the AVP that has
     1272 * been parsed is passed to this function for finer granularity check. For example for some
     1273 * speccific AVP, the format of an OCTETSTRING value can be further checked, or the
     1274 * interger value can be verified.
     1275 *
     1276 * RETURN VALUE:
     1277 *  0           : The value is valid.
     1278 *  !0          : An error occurred, the error code is returned. It is advised to return EINVAL on incorrect val
     1279 */
     1280typedef int (*dict_avpdata_check) (void * data, union avp_value * val, char ** error_msg);
     1281
     1282
    12611283
    12621284/* Type to hold data associated to a derived AVP data type */
     
    12671289        dict_avpdata_encode      type_encode;   /* cb to convert formatted data into an AVP value (or NULL) */
    12681290        DECLARE_FD_DUMP_PROTOTYPE((*type_dump), union avp_value * val); /* cb called by fd_msg_dump_* for this type of data (if != NULL). Returned string must be freed.  */
     1291        dict_avpdata_check       type_check;
     1292        void  *                          type_check_param;
    12691293};
    12701294
     
    12931317DECLARE_FD_DUMP_PROTOTYPE(fd_dictfct_Time_dump, union avp_value * avp_value);
    12941318
     1319
     1320/* For string AVP, the following type_check function provides simple basic check for specific characters presence, e.g. use "@." for trivial email address check */
     1321int fd_dictfct_CharInOS_check(void * data, union avp_value * val, char ** error_msg);
    12951322
    12961323
Note: See TracChangeset for help on using the changeset viewer.