/********************************************************************
 * FUNCTION do_show_one_object (sub-mode of show objects local RPC)
 * 
 * show objects: 1 of N
 *
 * INPUTS:
 *    obj == object to show
 *    mode == requested help mode
 *    anyout == address of return anyout status
 *
 * OUTPUTS:
 *    *anyout set to TRUE only if any suitable objects found
 *
 * RETURNS:
 *   status
 *********************************************************************/
static status_t
    do_show_one_object (obj_template_t *obj,
                        help_mode_t mode,
                        boolean *anyout)
{
    boolean               imode;

    imode = interactive_mode();

    if (obj_is_data_db(obj) && 
        obj_has_name(obj) &&
        !obj_is_hidden(obj) && !obj_is_abstract(obj)) {

        if (mode == HELP_MODE_BRIEF) {
            if (imode) {
                log_stdout("\n%s:%s",
                           obj_get_mod_name(obj),
                           obj_get_name(obj));
            } else {
                log_write("\n%s:%s",
                          obj_get_mod_name(obj),
                          obj_get_name(obj));
            }
        } else {
            obj_dump_template(obj, mode-1, 0, 0); 
        }
        *anyout = TRUE;
    }

    return NO_ERR;

} /* do_show_one_object */
Exemple #2
0
/********************************************************************
* FUNCTION get_session_idval
*
* Get the session ID number for the virtual
* counter entry that was called from a <get> operation
*
* INPUTS:
*    virval == virtual value
*    retsid == address of return session ID number
*
* OUTPUTS:
*   *retsid == session ID for this <session> entry

* RETURNS:
*    status
*********************************************************************/
static status_t 
    get_session_key (const val_value_t *virval,
                     ses_id_t *retsid)
{
    const val_value_t  *parentval, *sidval;

    parentval = virval->parent;
    if (parentval == NULL) {
        return ERR_NCX_DEF_NOT_FOUND;
    }

    sidval = val_find_child(parentval,
                            obj_get_mod_name(parentval->obj),
                            (const xmlChar *)"session-id");

    if (sidval == NULL) {
        return ERR_NCX_DEF_NOT_FOUND;        
    }

    *retsid = VAL_UINT(sidval);
    return NO_ERR;

} /* get_session_key */