+static char *gmol_fields[] = {
+ "list_name",
+ "member_type", "member_name",
+};
+
+static char *gtml_fields[] = {
+ "list_name",
+ "member_type", "member_name", "tag",
+};
+
+static struct validate gmol_validate = {
+ VOlist0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_visible_list,
+ 0,
+ get_members_of_list,
+};
+
+static char *glom_fields[] = {
+ "member_type", "member_name",
+ "list_name", "active", "publicflg", "hidden", "maillist", "grouplist",
+};
+
+static struct valobj glom_valobj[] = {
+ {V_TYPE, 0, 0, "rmember", 0, MR_TYPE},
+ {V_TYPEDATA, 1, 0, 0, 0, MR_NO_MATCH},
+};
+
+static struct validate glom_validate = {
+ glom_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_member,
+ 0,
+ get_lists_of_member,
+};
+
+static char *cmol_fields[] = {
+ "list_name",
+ "count",
+};
+
+static struct validate cmol_validate = {
+ VOlist0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_visible_list,
+ 0,
+ count_members_of_list,
+};
+
+static char *gsin_fields[] = {
+ "service",
+ "service", "update_int", "target_file", "script", "dfgen", "dfcheck",
+ "type", "enable", "inprogress", "harderror", "errmsg",
+ "ace_type", "ace_name", "modtime", "modby", "modwith",
+};
+
+static struct validate gsin_validate =
+{
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_service,
+ 0,
+ followup_gsin,
+};
+
+static char *qgsv_fields[] = {
+ "enable", "inprogress", "harderror",
+ "service",
+};
+
+static struct valobj qgsv_valobj[] = {
+ {V_TYPE, 0, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 1, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 2, 0, "boolean", 0, MR_TYPE},
+};
+
+static struct validate qgsv_validate = {
+ qgsv_valobj,
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ qualified_get_server,
+};
+
+static char *asin_fields[] = {
+ "service", "update_int", "target_file", "script", "type", "enable",
+ "ace_type", "ace_name",
+};
+
+static struct valobj asin_valobj[] = {
+ {V_CHAR, 0, SERVERS_TABLE, "name"},
+ {V_NUM, 1},
+ {V_LEN, 2, SERVERS_TABLE, "target_file"},
+ {V_LEN, 3, SERVERS_TABLE, "script"},
+ {V_TYPE, 4, 0, "service", 0, MR_TYPE},
+ {V_NUM, 5},
+ {V_TYPE, 6, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 7, 0, 0, 0, MR_ACE},
+};
+
+static struct validate asin_validate = /* for asin, usin */
+{
+ asin_valobj,
+ 8,
+ "name",
+ "name = UPPER('%s')",
+ 1,
+ 0,
+ 0,
+ 0,
+ set_uppercase_modtime,
+};
+
+static struct validate rsve_validate = {
+ asin_valobj,
+ 1,
+ "name",
+ "name = UPPER('%s')",
+ 1,
+ 0,
+ access_service,
+ 0,
+ set_uppercase_modtime,
+};
+
+static char *ssif_fields[] = {
+ "service", "dfgen", "dfcheck", "inprogress", "harderror", "errmsg",
+};
+
+static struct valobj ssif_valobj[] = {
+ {V_NAME, 0, SERVERS_TABLE, "name", 0, MR_SERVICE},
+ {V_NUM, 1},
+ {V_NUM, 2},
+ {V_NUM, 3},
+ {V_NUM, 4},
+ {V_LEN, 5, SERVERS_TABLE, "errmsg"},
+};
+
+static struct validate ssif_validate = {
+ ssif_valobj,
+ 6,
+ "name",
+ "name = UPPER('%s')",
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *dsin_fields[] = {
+ "service",
+};
+
+static struct validate dsin_validate = {
+ asin_valobj,
+ 1,
+ "name",
+ "name = UPPER('%s')",
+ 1,
+ 0,
+ 0,
+ setup_dsin,
+ 0,
+};
+
+static char *gshi_fields[] = {
+ "service", "machine",
+ "service", "machine", "enable", "override", "success", "inprogress",
+ "hosterror", "hosterrormsg", "ltt", "lts", "value1", "value2",
+ "value3", "modtime", "modby", "modwith",
+};
+
+static struct validate gshi_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_service,
+ 0,
+ followup_fix_modby,
+};
+
+static char *qgsh_fields[] = {
+ "service", "enable", "override", "success", "inprogress", "hosterror",
+ "service", "machine",
+};
+
+static struct valobj qgsh_valobj[] = {
+ {V_TYPE, 1, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 2, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 3, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 4, 0, "boolean", 0, MR_TYPE},
+ {V_TYPE, 5, 0, "boolean", 0, MR_TYPE},
+};
+
+static struct validate qgsh_validate = {
+ qgsh_valobj,
+ 5,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ qualified_get_serverhost,
+};
+
+static char *ashi_fields[] = {
+ "service", "machine", "enable", "value1", "value2", "value3",
+};
+
+static struct valobj ashi_valobj[] = {
+ {V_NAME, 0, SERVERS_TABLE, "name", 0, MR_SERVICE},
+ {V_ID, 1, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_NUM, 2},
+ {V_NUM, 3},
+ {V_NUM, 4},
+ {V_LEN, 5, SERVERHOSTS_TABLE, "value3"},
+};
+
+static struct validate ashi_validate = /* ashi & ushi */
+{
+ ashi_valobj,
+ 6,
+ "service",
+ "service = UPPER('%s') AND mach_id = %d",
+ 2,
+ 0,
+ access_service,
+ 0,
+ set_serverhost_modtime,
+};
+
+static struct validate rshe_validate =
+{
+ ashi_valobj,
+ 2,
+ "service",
+ "service = UPPER('%s') AND mach_id = %d",
+ 2,
+ 0,
+ access_service,
+ 0,
+ set_serverhost_modtime,
+};
+
+static struct validate ssho_validate =
+{
+ ashi_valobj,
+ 2,
+ "service",
+ "service = UPPER('%s') AND mach_id = %d",
+ 2,
+ 0,
+ access_service,
+ 0,
+ trigger_dcm,
+};
+
+static char *sshi_fields[] = {
+ "service", "machine", "override", "success", "inprogress",
+ "hosterror", "errmsg", "ltt", "lts",
+};
+
+static struct valobj sshi_valobj[] = {
+ {V_NAME, 0, SERVERS_TABLE, "name", 0, MR_SERVICE},
+ {V_ID, 1, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_NUM, 2},
+ {V_NUM, 3},
+ {V_NUM, 4},
+ {V_NUM, 5},
+ {V_LEN, 6, SERVERHOSTS_TABLE, "hosterrmsg"},
+ {V_NUM, 7},
+ {V_NUM, 8},
+};
+
+static struct validate sshi_validate =
+{
+ sshi_valobj,
+ 9,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *dshi_fields[] = {
+ "service", "machine",
+};
+
+static struct validate dshi_validate =
+{
+ ashi_valobj,
+ 2,
+ "service",
+ "service = UPPER('%s') AND mach_id = %d",
+ 2,
+ 0,
+ access_service,
+ setup_dshi,
+ 0,
+};
+
+static char *gslo_fields[] = {
+ "server",
+ "server", "machine",
+};
+
+static char *gfsl_fields[] = {
+ "label",
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype", "modtime", "modby", "modwith",
+};
+
+static struct validate gfsl_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_filesys,
+ 0,
+ followup_fix_modby,
+};
+
+static char *gfsm_fields[] = {
+ "machine",
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype", "modtime", "modby", "modwith",
+};
+
+static struct validate gfsm_validate = {
+ VOmach0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static char *gfsn_fields[] = {
+ "machine", "partition",
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype", "modtime", "modby", "modwith",
+};
+
+static struct validate gfsn_validate = {
+ VOmach0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static char *gfsp_fields[] = {
+ "path",
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype", "modtime", "modby", "modwith",
+};
+
+static char *gfsg_fields[] = {
+ "list",
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype", "modtime", "modby", "modwith",
+};
+
+static struct validate gfsg_validate = {
+ VOlist0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_list,
+ 0,
+ followup_fix_modby,
+};
+
+static char *afil_fields[] = {
+ "label", "type", "machine", "name", "mount", "access", "comments",
+ "owner", "owners", "create", "lockertype",
+};
+
+static struct valobj afil_valobj[] = {
+ {V_CHAR, 0, FILESYS_TABLE, "label"},
+ {V_TYPE, 1, 0, "filesys", 0, MR_FSTYPE},
+ {V_ID, 2, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 3, FILESYS_TABLE, "name"},
+ {V_LEN, 4, FILESYS_TABLE, "mount"},
+ {V_LEN, 5, FILESYS_TABLE, "rwaccess"},
+ {V_LEN, 6, FILESYS_TABLE, "comments"},
+ {V_ID, 7, USERS_TABLE, "login", "users_id", MR_USER},
+ {V_ID, 8, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_NUM, 9},
+ {V_TYPE, 10, 0, "lockertype", 0, MR_TYPE},
+};
+
+static struct validate afil_validate = {
+ afil_valobj,
+ 11,
+ "label",
+ "label = '%s'",
+ 1,
+ "filsys_id",
+ 0,
+ setup_afil,
+ set_filesys_modtime,
+};
+
+static char *ufil_fields[] = {
+ "label", "newlabel", "type", "machine", "name", "mount", "access",
+ "comments", "owner", "owners", "create", "lockertype",
+};
+
+static struct valobj ufil_valobj[] = {
+ {V_ID, 0, FILESYS_TABLE, "label", "filsys_id", MR_FILESYS},
+ {V_RENAME, 1, FILESYS_TABLE, "label", "filsys_id", MR_NOT_UNIQUE},
+ {V_TYPE, 2, 0, "filesys", 0, MR_FSTYPE},
+ {V_ID, 3, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 4, FILESYS_TABLE, "name"},
+ {V_LEN, 5, FILESYS_TABLE, "mount"},
+ {V_LEN, 6, FILESYS_TABLE, "rwaccess"},
+ {V_LEN, 7, FILESYS_TABLE, "comments"},
+ {V_ID, 8, USERS_TABLE, "login", "users_id", MR_USER},
+ {V_ID, 9, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_NUM, 10},
+ {V_TYPE, 11, 0, "lockertype", 0, MR_TYPE},
+};
+
+static struct validate ufil_validate = {
+ ufil_valobj,
+ 12,
+ "label",
+ "filsys_id = %d",
+ 1,
+ "filsys_id",
+ 0,
+ setup_ufil,
+ set_filesys_modtime,
+};
+
+static char *dfil_fields[] = {
+ "label",
+};
+
+static struct validate dfil_validate = {
+ VOfilesys0,
+ 1,
+ "label",
+ "filsys_id = %d",
+ 1,
+ 0,
+ 0,
+ setup_dfil,
+ 0,
+};
+
+static char *gfgm_fields[] = {
+ "fsgroup", "filesys", "sortkey"
+};
+
+static struct validate gfgm_validate = {
+ VOfilesys0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static struct valobj aftg_valobj[] = {
+ {V_ID, 0, FILESYS_TABLE, "label", "filsys_id", MR_FILESYS},
+ {V_ID, 1, FILESYS_TABLE, "label", "filsys_id", MR_FILESYS},
+};
+
+static struct validate aftg_validate = {
+ aftg_valobj,
+ 2,
+ "group_id",
+ "group_id = %d and filsys_id = %d",
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *ganf_fields[] = {
+ "machine", "dir", "device", "status", "allocated", "size",
+ "modtime", "modby", "modwith",
+};
+
+static char *gnfp_fields[] = {
+ "machine", "dir",
+ "machine", "dir", "device", "status", "allocated", "size",
+ "modtime", "modby", "modwith",
+};
+
+static struct validate gnfp_validate = {
+ VOmach0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static struct valobj anfp_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 1, NFSPHYS_TABLE, "dir"},
+ {V_LEN, 2, NFSPHYS_TABLE, "device"},
+ {V_NUM, 3},
+ {V_NUM, 4},
+ {V_NUM, 5},
+};
+
+static struct validate anfp_validate = {
+ anfp_valobj,
+ 6,
+ "dir",
+ "mach_id = %d and dir = '%s'",
+ 2,
+ "nfsphys_id",
+ 0,
+ prefetch_value,
+ set_nfsphys_modtime,
+};
+
+static struct validate unfp_validate = {
+ anfp_valobj,
+ 6,
+ "dir",
+ "mach_id = %d and dir = '%s'",
+ 2,
+ "nfsphys_id",
+ 0,
+ 0,
+ set_nfsphys_modtime,
+};
+
+static char *ajnf_fields[] = {
+ "machine", "dir", "adjustment",
+};
+
+static struct valobj ajnf_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, NAME, "mach_id", MR_MACHINE},
+ {V_CHAR, 1, NFSPHYS_TABLE, "dir"},
+ {V_NUM, 2},
+};
+
+static struct validate ajnf_validate = {
+ ajnf_valobj,
+ 3,
+ "dir",
+ "mach_id = %d and dir = '%s'",
+ 2,
+ "nfsphys_id",
+ 0,
+ 0,
+ set_nfsphys_modtime,
+};
+
+static char *dnfp_fields[] = {
+ "machine", "dir",
+};
+
+static struct validate dnfp_validate = {
+ anfp_valobj,
+ 2,
+ "dir",
+ "mach_id = %d and dir = '%s'",
+ 2,
+ "nfsphys_id",
+ 0,
+ setup_dnfp,
+ set_nfsphys_modtime,
+};
+
+static char *gqot_fields[] = {
+ "filesys", "type", "name",
+ "filesys", "type", "name", "quota", "dir", "machine",
+ "modtime", "modby", "modwith",
+};
+
+static struct valobj gqot_valobj[] = {
+ {V_TYPE, 1, 0, "quota_type", 0, MR_TYPE},
+ {V_TYPEDATA, 2, 0, 0, 0, MR_ACE},
+};
+
+static struct validate gqot_validate = {
+ gqot_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_gqot,
+};
+
+static char *gqbf_fields[] = {
+ "filesys",
+ "filesys", "type", "name", "quota", "dir", "machine",
+ "modtime", "modby", "modwith",
+};
+
+static struct validate gqbf_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_filesys,
+ 0,
+ followup_gqot,
+};
+
+static char *aqot_fields[] = {
+ "filesys", "type", "name", "quota",
+};
+
+static struct valobj aqot_valobj[] = {
+ {V_ID, 0, FILESYS_TABLE, "label", "filsys_id", MR_FILESYS},
+ {V_TYPE, 1, 0, "quota_type", 0, MR_TYPE},
+ {V_TYPEDATA, 2, 0, 0, 0, MR_ACE},
+ {V_NUM, 3},
+};
+
+static struct validate aqot_validate = {
+ aqot_valobj,
+ 4,
+ "filsys_id",
+ "filsys_id = %d and type = '%s' and entity_id = %d",
+ 3,
+ 0,
+ 0,
+ prefetch_filesys,
+ followup_aqot,
+};
+
+static struct validate uqot_validate = {
+ aqot_valobj,
+ 4,
+ "filsys_id",
+ "filsys_id = %d AND type = '%s' AND entity_id = %d",
+ 3,
+ 0,
+ 0,
+ setup_dqot,
+ followup_aqot,
+};
+
+static struct validate dqot_validate = {
+ aqot_valobj,
+ 3,
+ "filsys_id",
+ "filsys_id = %d AND type = '%s' AND entity_id = %d",
+ 3,
+ 0,
+ 0,
+ setup_dqot,
+ followup_dqot,
+};
+
+static char *gnfq_fields[] = {
+ "filesys", "login",
+ "filesys", "login", "quota", "dir", "machine",
+ "modtime", "modby", "modwith",
+};
+
+static struct validate gnfq_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_filesys,
+ 0,
+ followup_gqot,
+};
+
+static char *gnqp_fields[] = {
+ "machine", "dir",
+ "filesys", "login", "quota", "dir", "machine",
+ "modtime", "modby", "modwith",
+};
+
+static char *anfq_fields[] = {
+ "filesys", "login", "quota",
+};
+
+static struct valobj anfq_valobj[] = {
+ {V_ID, 0, FILESYS_TABLE, "label", "filsys_id", MR_FILESYS},
+ {V_ID, 1, USERS_TABLE, "login", "users_id", MR_USER},
+ {V_NUM, 2},
+};
+
+static struct validate anfq_validate = {
+ anfq_valobj,
+ 3,
+ "filsys_id",
+ "filsys_id = %d AND type = 'USER' AND entity_id = %d",
+ 2,
+ 0, /* object ? */
+ 0,
+ prefetch_filesys,
+ followup_aqot,
+};
+
+static struct validate unfq_validate = {
+ anfq_valobj,
+ 3,
+ "filsys_id",
+ "filsys_id = %d AND type = 'USER' AND entity_id = %d",
+ 2,
+ 0,
+ 0,
+ setup_dqot,
+ followup_aqot,
+};
+
+static struct validate dnfq_validate = {
+ anfq_valobj,
+ 3,
+ "filsys_id",
+ "filsys_id = %d AND entity_id = %d",
+ 2,
+ 0,
+ 0,
+ setup_dqot,
+ followup_dqot,
+};
+
+static char *gzcl2_fields[] = {
+ "class",
+ "class", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name",
+ "modtime", "modby", "modwith",
+};
+
+static char *gzcl_fields[] = {
+ "class",
+ "class", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name", "owner_type",
+ "owner_id", "modtime", "modby", "modwith",
+};
+
+static struct validate gzcl_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_zephyr,
+ 0,
+ followup_gzcl,
+};
+
+static char *azcl2_fields[] = {
+ "class", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name",
+};
+
+static struct valobj azcl2_valobj[] = {
+ {V_CHAR, 0, ZEPHYR_TABLE, "class"},
+ {V_TYPE, 1, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 2, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 3, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 4, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 5, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 6, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 7, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 8, 0, 0, "list_id", MR_ACE},
+};
+
+static struct validate azcl2_validate = {
+ azcl2_valobj,
+ 9,
+ "class",
+ "class = '%s'",
+ 1,
+ 0,
+ 0,
+ 0,
+ set_zephyr_modtime,
+};
+
+static char *azcl_fields[] = {
+ "class", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name", "owner_type",
+ "owner_id",
+};
+
+static struct valobj azcl_valobj[] = {
+ {V_CHAR, 0, ZEPHYR_TABLE, "class"},
+ {V_TYPE, 1, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 2, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 3, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 4, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 5, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 6, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 7, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 8, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 9, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 10, 0, 0, "list_id", MR_ACE},
+};
+
+static struct validate azcl_validate = {
+ azcl_valobj,
+ 11,
+ "class",
+ "class = '%s'",
+ 1,
+ 0,
+ 0,
+ 0,
+ set_zephyr_modtime,
+};
+
+static char *uzcl2_fields[] = {
+ "class", "newclass", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name",
+};
+
+static struct valobj uzcl2_valobj[] = {
+ {V_NAME, 0, ZEPHYR_TABLE, "class", 0, MR_BAD_CLASS},
+ {V_RENAME, 1, ZEPHYR_TABLE, "class", 0, MR_NOT_UNIQUE},
+ {V_TYPE, 2, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 3, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 4, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 5, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 6, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 7, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 8, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 9, 0, 0, "list_id", MR_ACE},
+};
+
+static struct validate uzcl2_validate = {
+ uzcl2_valobj,
+ 10,
+ "class",
+ "class = '%s'",
+ 1,
+ 0,
+ access_zephyr,
+ 0,
+ set_zephyr_modtime,
+};
+
+static char *uzcl_fields[] = {
+ "class", "newclass", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name", "owner_type", "owner_id",
+};
+
+static struct valobj uzcl_valobj[] = {
+ {V_NAME, 0, ZEPHYR_TABLE, "class", 0, MR_BAD_CLASS},
+ {V_RENAME, 1, ZEPHYR_TABLE, "class", 0, MR_NOT_UNIQUE},
+ {V_TYPE, 2, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 3, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 4, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 5, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 6, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 7, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 8, 0, "zace_type", 0, MR_ACE},
+ {V_TYPEDATA, 9, 0, 0, "list_id", MR_ACE},
+ {V_TYPE, 10, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 11, 0, 0, "list_id", MR_ACE},
+};
+
+static struct validate uzcl_validate = {
+ uzcl_valobj,
+ 12,
+ "class",
+ "class = '%s'",
+ 1,
+ 0,
+ access_zephyr,
+ 0,
+ set_zephyr_modtime,
+};
+
+static struct validate dzcl_validate = {
+ 0,
+ 0,
+ "class",
+ "class = '%s'",
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *gsha_fields[] = {
+ "machine",
+ "machine", "ace_type", "ace_name", "modtime", "modby", "modwith",
+};
+
+static struct validate gsha_validate =
+{
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_gsha,
+};
+
+static char *asha_fields[] = {
+ "machine", "ace_type", "ace_name",
+};
+
+static struct valobj asha_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_TYPE, 1, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 2, 0, 0, 0, MR_ACE},
+};
+
+static struct validate asha_validate =
+{
+ asha_valobj,
+ 3,
+ "mach_id",
+ "mach_id = %d",
+ 1,
+ "mach_id",
+ 0,
+ 0,
+ set_modtime_by_id,
+};
+
+static char *gacl_fields[] = {
+ "machine", "target",
+ "machine", "target", "kind", "list",
+};
+
+static char *aacl_fields[] = {
+ "machine", "target", "kind", "list",
+};
+
+static char *dacl_fields[] = {
+ "machine", "target",
+};
+
+static struct valobj aacl_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 1, ACL_TABLE, "target"},
+ {V_TYPE, 2, 0, "acl_kind", 0, MR_TYPE},
+ {V_ID, 3, LIST_TABLE, "name", "list_id", MR_LIST},
+};
+
+static struct validate gacl_validate =
+{
+ aacl_valobj,
+ 1,
+ NULL,
+ NULL,
+ 0,
+ "mach_id",
+ /* access_acl */ 0,
+ 0,
+ 0,
+};
+
+static struct validate aacl_validate =
+{
+ aacl_valobj,
+ 4,
+ "mach_id",
+ "mach_id = %d AND target = '%s'",
+ 2,
+ "mach_id",
+ /* access_acl */ 0,
+ 0,
+ 0,
+};
+
+static char *gsvc_fields[] = {
+ "service", "protocol",
+ "service", "protocol", "port", "description", "modtime", "modby", "modwith",
+};
+
+static char *asvc_fields[] = {
+ "service", "protocol", "port", "description",
+};
+
+static char *dsvc_fields[] = {
+ "service", "protocol",
+};
+
+static struct valobj asvc_valobj[] = {
+ {V_CHAR, 0, SERVICES_TABLE, "name"},
+ {V_CHAR, 1, SERVICES_TABLE, "protocol"},
+ {V_NUM, 2},
+ {V_CHAR, 3, SERVICES_TABLE, "description"},
+};
+
+static struct validate asvc_validate = {
+ asvc_valobj,
+ 4,
+ "name",
+ "name = '%s' AND protocol = '%s'",
+ 2,
+ 0,
+ 0,
+ 0,
+ set_service_modtime,
+};
+
+static struct validate dsvc_validate = {
+ asvc_valobj,
+ 2,
+ "name",
+ "name = '%s' AND protocol = '%s'",
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *gprn_fields[] = {
+ "name",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbd_fields[] = {
+ "duplexname",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbe_fields[] = {
+ "hwaddr",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbh_fields[] = {
+ "hostname",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbr_fields[] = {
+ "rm",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbl_fields[] = {
+ "location",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *gpbc_fields[] = {
+ "contact",
+ "name", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact", "modtime", "modby", "modwith"
+};
+
+static char *aprn_fields[] = {
+ "printer", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact",
+};
+
+static struct valobj aprn_valobj[] = {
+ {V_CHAR, 0, PRINTERS_TABLE, "name"},
+ {V_TYPE, 1, 0, "printertype", 0, MR_TYPE},
+ {V_TYPE, 2, 0, "printerhwtype", 0, MR_TYPE},
+ {V_CHAR, 3, PRINTERS_TABLE, "duplexname"},
+ {V_ID, 4, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_ID, 5, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_ID, 6, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 7, PRINTERS_TABLE, "rp"},
+ {V_ID, 8, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_NUM, 9},
+ {V_NUM, 10},
+ {V_ID, 11, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_ID, 12, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_NUM, 13},
+ {V_CHAR, 14, PRINTERS_TABLE, "location"},
+ {V_CHAR, 15, PRINTERS_TABLE, "contact"},
+};
+
+static struct validate aprn_validate = {
+ aprn_valobj,
+ 16,
+ "name",
+ "name = '%s'",
+ 1,
+ 0,
+ access_printer,
+ setup_aprn,
+ set_modtime,
+};
+
+static char *uprn_fields[] = {
+ "printer",
+ "printer", "type", "hwtype", "duplexname", "hostname",
+ "loghost", "rm", "rp", "rq", "ka", "pc", "ac", "lpc_acl",
+ "banner", "location", "contact",
+};
+
+static struct valobj uprn_valobj[] = {
+ {V_CHAR, 0, PRINTERS_TABLE, "name"},
+ {V_CHAR, 1, PRINTERS_TABLE, "name"},
+ {V_TYPE, 2, 0, "printertype", 0, MR_TYPE},
+ {V_TYPE, 3, 0, "printerhwtype", 0, MR_TYPE},
+ {V_CHAR, 4, PRINTERS_TABLE, "duplexname"},
+ {V_ID, 5, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_ID, 6, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_ID, 7, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_CHAR, 8, PRINTERS_TABLE, "rp"},
+ {V_ID, 9, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_NUM, 10},
+ {V_NUM, 11},
+ {V_ID, 12, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_ID, 13, LIST_TABLE, "name", "list_id", MR_LIST},
+ {V_NUM, 14},
+ {V_CHAR, 15, PRINTERS_TABLE, "location"},
+ {V_CHAR, 16, PRINTERS_TABLE, "contact"},
+};
+
+static struct validate uprn_validate = {
+ uprn_valobj,
+ 16,
+ "name",
+ "name = '%s'",
+ 1,
+ 0,
+ access_printer,
+ setup_aprn,
+ set_modtime,
+};
+
+static struct validate dprn_validate = {
+ 0,
+ 0,
+ "name",
+ "name = '%s'",
+ 1,
+ 0,
+ access_printer,
+ 0,
+ 0,
+};
+
+static char *gpsv_fields[] = {
+ "host",
+ "host", "kind", "printer_types", "owner_type", "owner_name",
+ "lpc_acl", "modtime", "modby", "modwith"
+};
+
+static struct valobj gpsv_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+};
+
+static struct validate gpsv_validate = {
+ gpsv_valobj,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_gpsv,
+};
+
+static char *apsv_fields[] = {
+ "host", "kind", "printer_types", "owner_type", "owner_name", "lpc_acl"
+};
+
+static struct valobj apsv_valobj[] = {
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_TYPE, 1, 0, "lpd_kind", 0, MR_TYPE},
+ {V_ID, 2, STRINGS_TABLE, "string", "string_id", MR_STRING},
+ {V_TYPE, 3, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 4, 0, 0, 0, MR_ACE},
+ {V_ID, 5, LIST_TABLE, "name", "list_id", MR_LIST},
+};
+
+static struct validate apsv_validate = {
+ apsv_valobj,
+ 6,
+ "mach_id",
+ "mach_id = %d",
+ 1,
+ "mach_id",
+ 0,
+ 0,
+ set_modtime_by_id,
+};
+
+static char *dpsv_fields[] = {
+ "host",
+};
+
+static struct validate dpsv_validate = {
+ gpsv_valobj,
+ 1,
+ "mach_id",
+ "mach_id = %d",
+ 1,
+ 0,
+ 0,
+ setup_dpsv,
+ 0,
+};
+
+static char *gali_fields[] = {
+ "name", "type", "trans",
+ "name", "type", "trans",
+};
+
+static char *aali_fields[] = {
+ "name", "type", "trans",
+};
+
+static struct valobj aali_valobj[] = {
+ {V_CHAR, 0, ALIAS_TABLE, "name"},
+ {V_TYPE, 1, 0, "alias", 0, MR_TYPE},
+ {V_CHAR, 2, ALIAS_TABLE, "trans"},
+};
+
+static struct validate aali_validate = {
+ aali_valobj,
+ 3,
+ "trans",
+ "name = '%s' and type = '%s' and trans = '%s'",
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static struct validate dali_validate = /* DELETE_ALIAS */
+{
+ 0,
+ 0,
+ "trans",
+ "name = '%s' and type = '%s' and trans = '%s'",
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *gval_fields[] = {
+ "name", "value",
+};
+
+static struct valobj gval_valobj[] = {
+ {V_NAME, 0, NUMVALUES_TABLE, "name", 0, MR_NO_MATCH},
+};
+
+static struct validate gval_validate = {
+ gval_valobj,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *aval_fields[] = {
+ "name", "value",
+};
+
+static struct valobj aval_valobj[] = {
+ {V_CHAR, 0, NUMVALUES_TABLE, "name"},
+ {V_NUM, 1},
+};
+
+static struct validate aval_validate = /* for aval, uval, and dval */
+{
+ aval_valobj,
+ 2,
+ "name",
+ "name = '%s'",
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *dval_fields[] = {
+ "name",
+};
+
+static char *gats_fields[] = {
+ "table_name", "appends", "updates", "deletes",
+ "modtime", "modby", "modwith",
+};
+
+static char *_sdl_fields[] = {
+ "level",
+};
+
+static struct validate _sdl_validate =
+{
+ VOnum0,
+ 1,
+ NULL,
+ NULL,
+ 0,
+ 0,
+ 0,
+ 0,
+ _sdl_followup,
+};
+
+static char *gusl_fields[] = {
+ "login", "domain_sid",
+ "login", "sid", "created",
+};
+
+static struct validate gusl_validate =
+{
+ VOuser0,
+ 1,
+ NULL,
+ NULL,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *glsn_fields[] = {
+ "name", "domain_sid",
+ "name", "sid", "created",
+};
+
+static struct validate glsn_validate =
+{
+ VOlist0,
+ 1,
+ NULL,
+ NULL,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *ausl_fields[] = {
+ "login", "sid",
+};
+
+static struct validate ausl_validate =
+{
+ VOuser0,
+ 1,
+ "sid",
+ "users_id = %d AND sid = '%s'",
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *alsn_fields[] = {
+ "name", "sid",
+};
+
+static struct validate alsn_validate =
+{
+ VOlist0,
+ 1,
+ "sid",
+ "list_id = %d AND sid = '%s'",
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static char *gdds_fields[] = {
+ "sid",
+};
+
+static char *gcon7_fields[] = {
+ "name",
+ "name", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name", "modtime", "modby", "modwith",
+};
+
+static struct validate gcon_validate = {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_gcon,
+};
+
+static char *gcon_fields[] = {
+ "name",
+ "name", "publicflg", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name", "modtime", "modby", "modwith",
+};
+
+static char *acon7_fields[] = {
+ "name", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name",
+};
+
+static struct valobj acon7_valobj[] = {
+ {V_CHAR, 0, CONTAINERS_TABLE, "name"},
+ {V_LEN, 1, CONTAINERS_TABLE, "description"},
+ {V_CHAR, 2, CONTAINERS_TABLE, "location"},
+ {V_CHAR, 3, CONTAINERS_TABLE, "contact"},
+ {V_TYPE, 4, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 5, 0, 0, 0, MR_ACE},
+ {V_TYPE, 6, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 7, 0, 0, 0, MR_ACE},
+};
+
+static struct validate acon7_validate =
+{
+ acon7_valobj,
+ 8,
+ "name",
+ "name = '%s'",
+ 1,
+ "cnt_id",
+ 0,
+ setup_acon,
+ set_modtime,
+};
+
+static char *acon_fields[] = {
+ "name", "publicflg", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name",
+};
+
+static struct valobj acon_valobj[] = {
+ {V_CHAR, 0, CONTAINERS_TABLE, "name"},
+ {V_NUM, 1},
+ {V_LEN, 2, CONTAINERS_TABLE, "description"},
+ {V_CHAR, 3, CONTAINERS_TABLE, "location"},
+ {V_CHAR, 4, CONTAINERS_TABLE, "contact"},
+ {V_TYPE, 5, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 6, 0, 0, 0, MR_ACE},
+ {V_TYPE, 7, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 8, 0, 0, 0, MR_ACE},
+};
+
+static struct validate acon_validate =
+{
+ acon_valobj,
+ 9,
+ "name",
+ "name = '%s'",
+ 1,
+ "cnt_id",
+ 0,
+ setup_acon,
+ set_modtime,
+};
+
+static char *ucon7_fields[] = {
+ "name",
+ "newname", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name",
+};
+
+static struct valobj ucon7_valobj[] = {
+ {V_ID, 0, CONTAINERS_TABLE, "name", "cnt_id", MR_CONTAINER},
+ {V_RENAME, 1, CONTAINERS_TABLE, "name", "cnt_id", MR_NOT_UNIQUE},
+ {V_LEN, 2, CONTAINERS_TABLE, "description"},
+ {V_CHAR, 3, CONTAINERS_TABLE, "location"},
+ {V_CHAR, 4, CONTAINERS_TABLE, "contact"},
+ {V_TYPE, 5, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 6, 0, 0, 0, MR_ACE},
+ {V_TYPE, 7, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 8, 0, 0, 0, MR_ACE},
+};
+
+static struct validate ucon7_validate =
+{
+ ucon7_valobj,
+ 9,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_container,
+ 0,
+ update_container,
+};
+
+static char *ucon_fields[] = {
+ "name",
+ "newname", "publicflg", "description", "location", "contact",
+ "ace_type", "ace_name", "memace_type", "memace_name",
+};
+
+static struct valobj ucon_valobj[] = {
+ {V_ID, 0, CONTAINERS_TABLE, "name", "cnt_id", MR_CONTAINER},
+ {V_RENAME, 1, CONTAINERS_TABLE, "name", "cnt_id", MR_NOT_UNIQUE},
+ {V_NUM, 2},
+ {V_LEN, 3, CONTAINERS_TABLE, "description"},
+ {V_CHAR, 4, CONTAINERS_TABLE, "location"},
+ {V_CHAR, 5, CONTAINERS_TABLE, "contact"},
+ {V_TYPE, 6, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 7, 0, 0, 0, MR_ACE},
+ {V_TYPE, 8, 0, "ace_type", 0, MR_ACE},
+ {V_TYPEDATA, 9, 0, 0, 0, MR_ACE},
+};
+
+static struct validate ucon_validate =
+{
+ ucon_valobj,
+ 10,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_container,
+ 0,
+ update_container,
+};
+
+static char *dcon_fields[] = {
+ "name",
+};
+
+static struct validate dcon_validate =
+{
+ VOcon0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ setup_dcon,
+ 0,
+};
+
+static char *amcn_fields[] = {
+ "machine", "container",
+};
+
+static struct valobj amcn_valobj[] = /* ADD_MACHINE_TO_CONTAINER */
+{ /* DELETE_MACHINE_FROM_CONTAINER */
+ {V_ID, 0, MACHINE_TABLE, "name", "mach_id", MR_MACHINE},
+ {V_ID, 1, CONTAINERS_TABLE, "name", "cnt_id", MR_CONTAINER},
+};
+
+static struct validate amcn_validate = /* for amtn and dmfn */
+{
+ amcn_valobj,
+ 2,
+ "mach_id",
+ "mach_id = %d",
+ 1,
+ 0,
+ access_container,
+ 0,
+ set_mach_modtime_by_id,
+};
+
+static struct validate dmcn_validate = /* for amtn and dmfn */
+{
+ amcn_valobj,
+ 2,
+ "mach_id",
+ "mach_id = %d and cnt_id = %d",
+ 2,
+ 0,
+ access_container,
+ 0,
+ set_mach_modtime_by_id,
+};
+
+static char *gmnm_fields[] = {
+ "machine",
+ "machine", "container",
+};
+
+static char *gmoc_fields[] = {
+ "container",
+ "isrecursive",
+ "machine",
+ "container",
+};
+
+static struct validate gmoc_validate =
+{
+ VOcon0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ get_machines_of_container,
+};
+
+static char *gsoc_fields[] = {
+ "container",
+ "isrecursive",
+ "subcontainer",
+};
+
+static struct validate gsoc_validate =
+{
+ VOcon0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ get_subcontainers_of_container,
+};
+
+static char *gtlc_fields[] = {
+ "name",
+};
+
+static char *scli_fields[] = {
+ "containername",
+ "listname",
+};
+
+static struct valobj scli_valobj[] = {
+ {V_ID, 0, CONTAINERS_TABLE, "name", "cnt_id", MR_CONTAINER},
+ {V_ID, 1, LIST_TABLE, "name", "list_id", MR_LIST},
+};
+
+static struct validate scli_validate = {
+ scli_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ setup_scli,
+ set_container_list,
+};
+
+static char *gcli_fields[] = {
+ "containername",
+ "containername", "listname",
+};
+
+/* Generalized Query Definitions */
+
+/* Multiple versions of the same query MUST be listed in ascending
+ * order.
+ */
+
+/* Note: For any query which uses prefetch_value, the vcnt should be
+ * one less than the number of %-format specifiers in the tlist.
+ */
+
+struct query Queries[] = {
+ {
+ /* Q_GALO - GET_ALL_LOGINS, v2 */
+ "get_all_logins",
+ "galo",
+ 2,
+ RETRIEVE,
+ "u",
+ USERS_TABLE,
+ "u.login, u.unix_uid, u.shell, u.last, u.first, u.middle FROM users u",
+ galo2_fields,
+ 6,
+ "u.users_id != 0",
+ 0,
+ "u.login",
+ 0,
+ },
+
+ {
+ /* Q_GALO - GET_ALL_LOGINS, v3 */
+ "get_all_logins",