static inline const char *obj_type_name(enum obj_type *t)
{
switch (obj_type(t)) {
+ case OBJ_TYPE_NONE: return "NONE";
case OBJ_TYPE_LISTENER: return "LISTENER";
case OBJ_TYPE_PROXY: return "PROXY";
case OBJ_TYPE_SERVER: return "SERVER";
case OBJ_TYPE_APPLET: return "APPLET";
case OBJ_TYPE_APPCTX: return "APPCTX";
case OBJ_TYPE_CONN: return "CONN";
- default: return "NONE";
+ case OBJ_TYPE_SRVRQ: return "SRVRQ";
+ case OBJ_TYPE_CS: return "CS";
+ default: return "!INVAL!";
}
}
static inline void *obj_base_ptr(enum obj_type *t)
{
switch (obj_type(t)) {
+ case OBJ_TYPE_NONE: return NULL;
case OBJ_TYPE_LISTENER: return __objt_listener(t);
case OBJ_TYPE_PROXY: return __objt_proxy(t);
case OBJ_TYPE_SERVER: return __objt_server(t);
case OBJ_TYPE_APPLET: return __objt_applet(t);
case OBJ_TYPE_APPCTX: return __objt_appctx(t);
case OBJ_TYPE_CONN: return __objt_conn(t);
+ case OBJ_TYPE_SRVRQ: return __objt_dns_srvrq(t);
case OBJ_TYPE_CS: return __objt_cs(t);
- default: return NULL;
+ default: return t; // exact pointer for invalid case
}
}