libdefs.h File Reference

Information needed by MGD about libddl functions. More...


#define DDL_ROLLBACK   1
#define DDL_LOAD_MERGE   2
#define DDL_LOAD_REPLACE   3
#define DDL_LOAD_PATCH   5
#define DDL_LOAD_UPDATE   6
#define DDL_LOAD_SET   8
#define CLI_SHELL_TCSH   1
#define CLI_SHELL_CSH   2
#define CLI_SHELL_SH   3
#define CMDA_NO_OPINION   -1
#define CMDA_DENIED   0
#define CMDA_ALLOWED   1
#define STRING_TO_ARGV(_path, _str, _last, _delim)
 STRING_TO_ARGV: break up a string into argv[]-like pieces.


typedef enum ddl_error_option_e ddl_error_option_t
typedef enum ddl_db_choice_e ddl_db_choice_t
typedef void(* ddl_make_file_info_t )(char *, size_t, const char *, mode_t mode, time_t, size_t, time_t)
typedef ddl_boolean_t(* ddl_file_filter_t )(const char *)


enum  ddl_error_option_e { STOP_ON_ERROR = 0, IGNORE_ERROR }


const char * ddl_shell (int shell, const char *def)
void ddl_make_file_information (char *, size_t, const char *, time_t)
int ddl_expand_filename (mgmt_peer_t *peer, const char *, const char *, const char *, const char *, const char *, ddl_boolean_t, ddl_boolean_t, ddl_make_file_info_t func, ddl_file_filter_t filter_func)
ddl_boolean_t ddl_map_filename (char *buf, size_t bufsiz, const char *user, const char *dir, const char *input)
ddl_boolean_t ddl_start_command_mode (mgmt_peer_t *, const char *, ddl_require_t, ddl_boolean_t, ddl_boolean_t)
ddl_boolean_t db_export_show_database (ddl_action_args_t *daap, dbm_memory_t *dbmp, ddl_boolean_t committed)
int ddl_apropos (ddl_node_t *root, const char *regexp)
ddl_boolean_t gram_handoff (mgmt_peer_t *, char *, ddl_require_t, ddl_boolean_t, ddl_db_choice_t)
ddl_boolean_t gram_load_transient (mgmt_peer_t *peer, dbm_memory_t *dbmp, ddl_object_t *dop, const char *file, int style)
ddl_boolean_t gram_load_file (mgmt_peer_t *, dbm_memory_t *, const char *file, int, ddl_error_option_t, ddl_boolean_t, ddl_boolean_t, ddl_boolean_t, ddl_boolean_t, ddl_boolean_t, ddl_boolean_t)
ddl_boolean_t gram_test_file (const char *, mgmt_peer_t *)
int halt_other_routing_engine (mgmt_peer_t *, const char *)
void ddl_update_permbits (ddl_require_t *permptr, char *loginclass)
ddl_require_t ddl_class_req (const char *class)
ddl_require_t ddl_user_req (const char *user)
boolean ddl_user_has_perm (const char *logname, pid_t pid, const char *permname)
const char * ddl_user_class (const char *user)
ddl_boolean_t ddl_require (ddl_require_t, ddl_require_t, ddl_boolean_t)
ddl_boolean_t cmda_do_auth (mgmt_peer_t *pp)
ddl_boolean_t cmda_check_auth (ddl_node_t *dnp, int *allowed, gram_data_t *gdp)
ddl_boolean_t cmda_show_auth (mgmt_peer_t *pp)
ddl_boolean_t cmda_check_gram_stack_auth (gram_data_t *gdp, int flag)
ddl_boolean_t cmda_check_object (ddl_require_t, ddl_object_t *, ddl_boolean_t)
ddl_boolean_t cmda_check_dynamic_config_node_r (gram_data_t *gdp, ddl_node_t *dnp, const char *symbol, ddl_boolean_t writing)
ddl_boolean_t user_has_deny_configuration (void)
void ddl_set_routing_engine_number (int num)
int mgd_xml_cmd (ddl_action_args_t *daap, const char *cmd, const char *arg)
int ddl_warn_undefined_path_reference (DDL_ACTION_ARGS)
int ddl_warn_undefined_deprecated_path_reference (DDL_ACTION_ARGS)
void set_no_action_acceptable_check (ddl_boolean_t check)
ddl_boolean_t get_no_action_acceptable_check (void)


ddl_boolean_t any_auth

Detailed Description

Information needed by MGD about libddl functions.

Define Documentation

#define STRING_TO_ARGV _path,
_delim   ) 


{       \
    size_t xxplen = strlen(_str);               \
    const char **xxpathp = _path;               \
    const char ***xxlastp = _last;              \
    char *xxcp, *xxbp;                          \
    xxbp = alloca(xxplen + 1);                  \
    bcopy(_str, xxbp, xxplen + 1);              \
    bzero(_path, sizeof(_path));                \
    for (xxcp = xxbp; *xxcp; xxbp = xxcp) {     \
        if ((isblank(_delim) && isblank(*xxbp)) \
            || *xxbp == _delim) {               \
            ++xxcp;                             \
            continue;                           \
        }                                       \
        *xxpathp++ = xxbp;                      \
        xxcp = strchr(xxbp, _delim);            \
        if (xxcp == NULL) break;                \
        *xxcp++ = 0;                            \
    }                                           \
    *xxpathp = NULL;                            \
    if (xxlastp) *xxlastp = xxpathp;            \
STRING_TO_ARGV: break up a string into argv[]-like pieces.

Cannot be an inline, since it alloca()s the space.

2007-2009 Juniper Networks, Inc. All rights reserved. The information contained herein is confidential information of Juniper Networks, Inc., and may not be used, disclosed, distributed, modified, or copied without the prior written consent of Juniper Networks, Inc. in an express license. This information is subject to change by Juniper Networks, Inc. Juniper Networks, the Juniper Networks logo, and JUNOS are registered trademarks of Juniper Networks, Inc. in the United States and other countries. All other trademarks, service marks, registered trademarks, or registered service marks are the property of their respective owners.
Generated on Sun May 30 20:23:19 2010 for libddl-access by Doxygen 1.4.5