int access_qgli();
int access_service();
int access_filesys();
+int access_host();
+int access_ahal();
/* Query Setup Routines */
int prefetch_value();
+int prefetch_filesys();
int setup_ausr();
int setup_dusr();
int setup_spop();
int setup_dpob();
int setup_dmac();
+int setup_dsnet();
int setup_dclu();
int setup_alis();
int setup_dlis();
int setup_afil();
int setup_ufil();
int setup_dfil();
+int setup_aftg();
int setup_dnfp();
int setup_dqot();
int setup_sshi();
int setup_akum();
+int setup_dsnt();
+int setup_ahst();
+int setup_ahal();
/* Query Followup Routines */
int followup_fix_modby();
int followup_gpob();
int followup_glin();
int followup_aqot();
+int followup_dqot();
int followup_gzcl();
int followup_gsha();
int followup_gqot();
int followup_gpce();
+int followup_guax();
+int followup_uuac();
+int followup_gsnt();
+int followup_ghst();
int set_modtime();
int set_modtime_by_id();
int get_ace_use();
int qualified_get_lists();
int get_members_of_list();
+int get_end_members_of_list();
int qualified_get_server();
int qualified_get_serverhost();
int trigger_dcm();
int count_members_of_list();
int get_lists_of_member();
int register_user();
+int _sdl_followup();
\f
static char ACE_NAME[] = "ace_name";
static char ACE_TYPE[] = "ace_type";
+static char ADDRESS[] = "address";
+static char ALIAS[] = "alias";
static char CLASS[] = "class";
static char CLU_ID[] = "clu_id";
static char CLUSTER[] = "cluster";
+static char COMMENTS[] = "comments";
static char DESC[] = "description";
static char DEVICE[] = "device";
static char DIR[] = "dir";
static char NAME[] = "name";
static char QUOTA[] = "quota";
static char QUOTA_TYPE[] = "quota_type";
+static char SECURE[] = "secure";
static char SERVICE[] = "service";
static char SHELL[] = "shell";
+static char SIGNATURE[] = "signature";
+static char SNET_ID[] = "snet_id";
+static char SUBNET[] = "subnet";
static char STATUS[] = "status";
static char TYPE[] = "type";
static char USERS[] = "users";
*/
static struct valobj VOsort0[] = {
- {V_SORT, 0, 0, 0, 0, 0},
+ {V_SORT, 0},
+};
+
+static struct valobj VOwild0[] = {
+ {V_WILD, 0},
+};
+
+static struct valobj VOupwild0[] = {
+ {V_UPWILD, 0},
+};
+
+static struct valobj VOwild0sort[] = {
+ {V_WILD, 0},
+ {V_SORT, 0},
+};
+
+static struct valobj VOupwild0sort[] = {
+ {V_UPWILD, 0},
+ {V_SORT, 0},
+};
+
+static struct valobj VOwild01sort0[] = {
+ {V_WILD, 0},
+ {V_WILD, 1},
+ {V_SORT, 0},
+};
+
+static struct valobj VOwild01sort01[] = {
+ {V_WILD, 0},
+ {V_WILD, 1},
+ {V_SORT, 0},
+ {V_SORT, 1},
+};
+
+static struct valobj VOwild012sort0[] = { /* get_alias */
+ {V_WILD, 0},
+ {V_WILD, 1},
+ {V_WILD, 2},
+ {V_SORT, 0},
};
static struct valobj VOdate1[] = {
*/
static struct validate VDmach = { VOmach0, 1 };
+static struct validate VDsort0= { VOsort0, 1 };
+static struct validate VDwild0= { VOwild0, 1 };
+static struct validate VDupwild0= { VOupwild0, 1 };
static struct validate VDsort2= { VOsort01,2 };
+static struct validate VDwild2sort2 = { VOwild01sort01,4 };
+static struct validate VDwild3sort1 = { VOwild012sort0,4 };
static struct validate VDsortf = {
- VOsort0,
- 1,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- followup_fix_modby,
+ VOsort0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static struct validate VDwildsortf = {
+ VOwild0sort,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static struct validate VDwild2sortf = {
+ VOwild01sort01,
+ 4,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static struct validate VDupwildsortf = {
+ VOupwild0sort,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
};
LOGIN, UID, SHELL, LAST, FIRST, MIDDLE,
};
+static char *gual_fields[] = {
+ LOGIN,
+ LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE, MOD1, MOD2, MOD3,
+};
+
static char *gubl_fields[] = {
LOGIN,
LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
- MIT_ID, CLASS, MOD1, MOD2, MOD3
+ MIT_ID, CLASS, MOD1, MOD2, MOD3,
};
-static struct validate gubx_validate = /* gubl, gubu */
+static struct validate gubl_validate =
{
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
0,
access_login,
0,
- followup_fix_modby,
+ followup_guax,
+};
+
+static char *guau_fields[] = {
+ UID,
+ LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE, MOD1, MOD2, MOD3,
+};
+
+static char *guan_fields[] = {
+ FIRST, LAST,
+ LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE, MOD1, MOD2, MOD3,
+};
+
+static struct validate guan_validate =
+{
+ VOwild01sort01,
+ 4,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_guax,
+};
+
+static char *guac_fields[] = {
+ CLASS,
+ LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE, MOD1, MOD2, MOD3,
+};
+
+static char *guam_fields[] = {
+ MIT_ID,
+ LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE, MOD1, MOD2, MOD3,
};
static char *gubu_fields[] = {
MIT_ID, CLASS, MOD1, MOD2, MOD3,
};
+static struct validate gubu_validate =
+{
+ VOsort0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_login,
+ 0,
+ followup_fix_modby,
+};
+
static char *gubn_fields[] = {
FIRST, LAST,
LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
MIT_ID, CLASS, MOD1, MOD2, MOD3,
};
+static struct validate gubn_validate =
+{
+ VOwild01sort0,
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
static char *gubc_fields[] = {
CLASS,
LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
MIT_ID, CLASS, MOD1, MOD2, MOD3,
};
-static char *ausr_fields[] = {
+static char *auac_fields[] = {
LOGIN, UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
- MIT_ID, CLASS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE,
};
-static struct valobj ausr_valobj[] = {
+static struct valobj auac_valobj[] = {
{V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
{V_CHAR, 0},
{V_CHAR, 3},
{V_CHAR, 5},
{V_CHAR, 7},
{V_TYPE, 8, CLASS, 0, 0, MR_BAD_CLASS},
+ {V_ID, 9, "strings", "string", "string_id", MR_NO_MATCH},
+};
+
+static struct validate auac_validate = {
+ auac_valobj,
+ 8,
+ LOGIN,
+ "login = LEFT('%s',SIZE(login))",
+ 1,
+ USERS_ID,
+ 0,
+ setup_ausr,
+ followup_ausr,
};
static struct validate ausr_validate = {
- ausr_valobj,
+ auac_valobj,
7,
LOGIN,
- "users.login = '%s'",
+ "login = LEFT('%s',SIZE(login))",
1,
USERS_ID,
0,
static char *rusr_fields[] = {
UID, LOGIN, "fs_type"
-};
+ };
static struct valobj rusr_valobj[] = {
{V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
0,
};
-static char *uusr_fields[] = {
+static char *uuac_fields[] = {
LOGIN,
"newlogin", UID, SHELL, LAST, FIRST, MIDDLE, STATUS,
- MIT_ID, CLASS,
+ MIT_ID, CLASS, COMMENTS, SIGNATURE, SECURE,
+};
+
+static struct valobj uuac_valobj[] = {
+ {V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
+ {V_ID, 0, USERS, LOGIN, USERS_ID, MR_USER},
+ {V_RENAME, 1, USERS, LOGIN, USERS_ID, MR_NOT_UNIQUE},
+ {V_CHAR, 4},
+ {V_CHAR, 5},
+ {V_CHAR, 6},
+ {V_CHAR, 8},
+ {V_TYPE, 9, CLASS, 0, 0, MR_BAD_CLASS},
+ {V_ID, 10, "strings", "string", "string_id", MR_NO_MATCH},
};
-static struct valobj uusr_valobj[] = {
- {V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
- {V_ID, 0, USERS, LOGIN, USERS_ID, MR_USER},
- {V_RENAME, 1, USERS, LOGIN, USERS_ID, MR_NOT_UNIQUE},
- {V_CHAR, 4},
- {V_CHAR, 5},
- {V_CHAR, 6},
- {V_CHAR, 8},
- {V_TYPE, 9, CLASS, 0, 0, MR_BAD_CLASS},
+static struct validate uuac_validate = {
+ uuac_valobj,
+ 9,
+ 0,
+ 0,
+ 0,
+ USERS_ID,
+ 0,
+ setup_ausr,
+ followup_uuac,
};
static struct validate uusr_validate = {
- uusr_valobj,
+ uuac_valobj,
8,
0,
0,
0,
USERS_ID,
0,
- 0,
+ setup_ausr,
set_modtime_by_id,
};
STATUS,
};
+static char *uuss_fields[] = {
+ LOGIN,
+ SECURE,
+};
+
static struct validate uust_validate = {
VOuser0lock,
2,
};
static struct valobj dubu_valobj[] = {
- {V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
- {V_ID, 0, USERS, UID, USERS_ID, MR_USER}
+ {V_LOCK, 0, USERS, 0, USERS_ID, MR_DEADLOCK},
+ {V_ID, 0, USERS, UID, USERS_ID, MR_USER}
};
static struct validate dubu_validate = {
};
static char *gkum_fields[] = { LOGIN, "kerberos",
- LOGIN, "kerberos" };
+ LOGIN, "kerberos" };
static char *akum_fields[] = { LOGIN, "kerberos" };
static struct valobj akum_valobj[] =
{
- {V_ID, 0, USERS, LOGIN, USERS_ID, MR_USER},
- {V_ID, 1, "strings", "string", "string_id", MR_NO_MATCH},
+ {V_ID, 0, USERS, LOGIN, USERS_ID, MR_USER},
+ {V_ID, 1, "strings", "string", "string_id", MR_NO_MATCH},
};
static struct validate akum_validate =
{
- akum_valobj,
- 1,
- USERS_ID,
- "krbmap.users_id = %d or krbmap.string_id = %d",
- 2,
- USERS_ID,
- access_user,
- setup_akum,
- 0
+ akum_valobj,
+ 1,
+ USERS_ID,
+ "users_id = %d or string_id = %d",
+ 2,
+ USERS_ID,
+ access_user,
+ setup_akum,
+ 0,
};
static struct validate dkum_validate =
{
- akum_valobj,
- 2,
- USERS_ID,
- "krbmap.users_id = %d and krbmap.string_id = %d",
- 2,
- USERS_ID,
- access_user,
- 0,
- 0
+ akum_valobj,
+ 2,
+ USERS_ID,
+ "users_id = %d and string_id = %d",
+ 2,
+ USERS_ID,
+ access_user,
+ 0,
+ 0,
};
static char *gfbl_fields[] = {
VOuser0,
1,
"potype",
- "users.potype != 'NONE' and users.users_id=%d",
+ "potype != 'NONE' and users_id=%d",
1,
0,
access_user,
NAME, TYPE, MOD1, MOD2, MOD3,
};
-static char *amac_fields[] = {
- NAME, TYPE
+static char *ghst_fields[] = {
+ NAME, ADDRESS, "location", "contact",
+ NAME, "vendor", "model", "os", "location", "contact", "use", "status", "status_change", SUBNET, ADDRESS, ACE_TYPE, ACE_NAME, "admin_comment", "ops_comment", "created", "creator", "inuse", MOD1, MOD2, MOD3,
+};
+
+static struct valobj ghst_valobj[] = {
+ {V_UPWILD, 0},
+ {V_UPWILD, 1},
+ {V_UPWILD, 2},
+ {V_UPWILD, 3},
+ {V_SORT, 0},
};
-static struct valobj amac_valobj[] = {
+static struct validate ghst_validate = {
+ ghst_valobj,
+ 5,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_host,
+ 0,
+ followup_ghst,
+};
+
+static char *ahst_fields[] = {
+ NAME, "vendor", "model", "os", "location", "contact", "use", "status", SUBNET, ADDRESS, ACE_TYPE, ACE_NAME, "admin_comment", "ops_comment",
+};
+
+static struct valobj ahst_valobj[] = {
{V_CHAR, 0},
+ {V_CHAR, 1},
+ {V_CHAR, 2},
+ {V_CHAR, 3},
+ {V_CHAR, 4},
{V_LOCK, 0, MACHINE, 0, MACH_ID, MR_DEADLOCK},
- {V_TYPE, 1, "mac_type", 0, 0, MR_TYPE},
+ {V_ID, 8, SUBNET, NAME, SNET_ID, MR_SUBNET},
+ {V_TYPE, 10, ACE_TYPE, 0, 0, MR_ACE},
+ {V_TYPEDATA, 11, 0, 0, 0, MR_ACE},
+ {V_ID, 12, "strings", "string", "string_id", MR_NO_MATCH},
+ {V_ID, 13, "strings", "string", "string_id", MR_NO_MATCH},
};
-static struct validate amac_validate = {
- amac_valobj,
- 3,
+static struct validate ahst_validate = {
+ ahst_valobj,
+ 11,
NAME,
- "machine.name = uppercase('%s')",
+ "name = uppercase(LEFT('%s',SIZE(name)))",
1,
MACH_ID,
- 0,
- prefetch_value,
+ access_host,
+ setup_ahst,
set_uppercase_modtime,
};
-static char *umac_fields[] = {
+static char *uhst_fields[] = {
NAME,
- "newname", TYPE,
+ "newname", "vendor", "model", "os", "location", "contact", "use", "status", SUBNET, ADDRESS, ACE_TYPE, ACE_NAME, "admin_comment", "ops_comment",
};
-static struct valobj umac_valobj[] = {
- {V_LOCK, 0, MACHINE, 0, MACH_ID, MR_DEADLOCK},
+static struct valobj uhst_valobj[] = {
+ {V_CHAR, 0},
{V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
{V_RENAME, 1, MACHINE, NAME, MACH_ID, MR_NOT_UNIQUE},
- {V_TYPE, 2, "mac_type", 0, 0, MR_TYPE},
+ {V_CHAR, 2},
+ {V_CHAR, 3},
+ {V_CHAR, 4},
+ {V_CHAR, 5},
+ {V_LOCK, 0, MACHINE, 0, MACH_ID, MR_DEADLOCK},
+ {V_ID, 9, SUBNET, NAME, SNET_ID, MR_SUBNET},
+ {V_TYPE, 11, ACE_TYPE, 0, 0, MR_ACE},
+ {V_TYPEDATA, 12, 0, 0, 0, MR_ACE},
+ {V_ID, 13, "strings", "string", "string_id", MR_NO_MATCH},
+ {V_ID, 14, "strings", "string", "string_id", MR_NO_MATCH},
};
-static struct validate umac_validate = {
- umac_valobj,
- 4,
+static struct validate uhst_validate = {
+ uhst_valobj,
+ 13,
0,
0,
0,
MACH_ID,
- 0,
- 0,
+ access_host,
+ setup_ahst,
set_modtime_by_id,
};
-static char *dmac_fields[] = {
+static char *dhst_fields[] = {
NAME,
};
-static struct valobj dmac_valobj[] = {
+static struct valobj dhst_valobj[] = {
{V_LOCK, 0, MACHINE, 0, MACH_ID, MR_DEADLOCK},
{V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
};
-static struct validate dmac_validate = {
- dmac_valobj,
+static struct validate dhst_validate = {
+ dhst_valobj,
2,
0,
0,
0,
};
+static char *ghal_fields[] = {
+ ALIAS, "canonical_hostname",
+ ALIAS, "canonical_hostname"
+};
+
+static struct valobj ghal_valobj[] = {
+ {V_UPWILD, 0},
+ {V_UPWILD, 1},
+ {V_SORT, 0},
+};
+
+static struct validate ghal_validate = {
+ ghal_valobj,
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+};
+
+static struct valobj ahal_valobj[] = {
+ {V_CHAR, 0},
+ {V_UPWILD, 0},
+ {V_ID, 1, MACHINE, NAME, MACH_ID, MR_MACHINE},
+};
+
+static struct validate ahal_validate = {
+ ahal_valobj,
+ 3,
+ NAME,
+ "name = LEFT('%s',SIZE(name))",
+ 1,
+ MACH_ID,
+ access_ahal,
+ setup_ahal,
+ 0,
+};
+
+static struct valobj dhal_valobj[] = {
+ {V_UPWILD, 0},
+ {V_LOCK, 0, MACHINE, 0, MACH_ID, MR_DEADLOCK},
+ {V_ID, 1, MACHINE, NAME, MACH_ID, MR_MACHINE},
+};
+
+static struct validate dhal_validate = {
+ dhal_valobj,
+ 3,
+ NAME,
+ "name = LEFT('%s',SIZE(name)) AND mach_id = %d",
+ 2,
+ MACH_ID,
+ access_ahal,
+ 0,
+ 0,
+};
+
+static char *gsnt_fields[] = {
+ NAME,
+ NAME, DESC, ADDRESS, "mask", "low", "high", "prefix", ACE_TYPE, ACE_NAME,
+ MOD1, MOD2, MOD3
+};
+
+static struct valobj gsnt_valobj[] = {
+ {V_UPWILD, 0},
+ {V_SORT, 0},
+};
+
+static struct validate gsnt_validate = {
+ gsnt_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_gsnt,
+};
+
+static char *asnt_fields[] = {
+ NAME, DESC, ADDRESS, "mask", "low", "high", "prefix", ACE_TYPE, ACE_NAME,
+};
+
+static struct valobj asnt_valobj[] = {
+ {V_LOCK, 0, SUBNET, 0, SNET_ID, MR_DEADLOCK},
+ {V_CHAR, 0},
+ {V_TYPE, 7, ACE_TYPE, 0, 0, MR_ACE},
+ {V_TYPEDATA, 8, 0, 0, 0, MR_ACE},
+};
+
+static struct validate asnt_validate =
+{
+ asnt_valobj,
+ 4,
+ NAME,
+ "name = uppercase(LEFT('%s',SIZE(name))) OR description = '__'+'%s' OR saddr = '%s'",
+ 3,
+ SNET_ID,
+ 0,
+ prefetch_value,
+ set_uppercase_modtime,
+};
+
+static char *usnt_fields[] = {
+ NAME,
+ "newname", DESC, ADDRESS, "mask", "low", "high", "prefix", ACE_TYPE, ACE_NAME,
+};
+
+static struct valobj usnt_valobj[] = {
+ {V_LOCK, 0, SUBNET, 0, SNET_ID, MR_DEADLOCK},
+ {V_ID, 0, SUBNET, NAME, SNET_ID, MR_NO_MATCH},
+ {V_RENAME, 1, SUBNET, NAME, SNET_ID, MR_NOT_UNIQUE},
+ {V_TYPE, 8, ACE_TYPE, 0, 0, MR_ACE},
+ {V_TYPEDATA, 9, 0, 0, 0, MR_ACE},
+};
+
+static struct validate usnt_validate =
+{
+ usnt_valobj,
+ 5,
+ NAME,
+ "snet_id = %d OR description = '__'+'%s' OR description = '__'+'%s' OR saddr = '%s'",
+ 4,
+ SNET_ID,
+ 0,
+ 0,
+ set_modtime_by_id,
+};
+
+static char *dsnt_fields[] = {
+ NAME,
+};
+
+static struct valobj dsnt_valobj[] = {
+ {V_LOCK, 0, SUBNET, 0, SNET_ID, MR_DEADLOCK},
+ {V_ID, 0, SUBNET, NAME, SNET_ID, MR_SUBNET},
+};
+
+static struct validate dsnt_validate = {
+ dsnt_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ setup_dsnt,
+ 0,
+};
+
static char *gclu_fields[] = {
NAME,
NAME, DESC, LOCATION, MOD1, MOD2, MOD3,
static char *aclu_fields[] = {
NAME, DESC, LOCATION,
};
-
+
static struct valobj aclu_valobj[] = {
{V_LOCK, 0, CLUSTER, 0, CLU_ID, MR_DEADLOCK},
{V_CHAR, 0}
};
-static struct validate aclu_validate = /* for aclu */
+static struct validate aclu_validate =
{
aclu_valobj,
2,
NAME,
- "cluster.name = '%s'",
+ "name = LEFT('%s',SIZE(name))",
1,
CLU_ID,
0,
};
static struct validate dclu_validate = {
- VOclu0,
- 1,
- 0,
- 0,
- 0,
- 0,
- 0,
- setup_dclu,
- 0,
+ VOclu0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ setup_dclu,
+ 0,
};
static char *gmcm_fields[] = {
MACHINE, CLUSTER,
};
+static struct valobj gmcm_valobj[] =
+{
+ {V_UPWILD, 0},
+ {V_WILD, 1},
+ {V_SORT, 0},
+ {V_SORT, 1},
+};
+
+static struct validate gmcm_validate = { gmcm_valobj, 4 };
+
static struct valobj amtc_valobj[] = /* ADD_MACHINE_TO_CLUSTER */
{ /* DELETE_MACHINE_FROM_CLUSTER */
{V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
amtc_valobj,
2,
MACH_ID,
- "mcmap.mach_id = %d and mcmap.clu_id = %d",
+ "mach_id = %d and clu_id = %d",
2,
0,
0,
static struct valobj acld_valobj[] =
{
{V_ID, 0, CLUSTER, NAME, CLU_ID, MR_CLUSTER},
+ {V_CHAR, 1},
{V_CHAR, 2},
};
-static struct validate acld_validate = /* ADD_CLUSTER_DATA */
-{ /* DELETE_CLUSTER_DATA */
+static struct validate acld_validate =
+{
acld_valobj,
+ 3,
+ CLU_ID,
+ "clu_id = %d AND serv_label = '%s' AND serv_cluster = LEFT('%s',SIZE(serv_cluster))",
+ 3,
+ 0,
+ 0,
+ 0,
+ set_cluster_modtime_by_id,
+};
+
+static struct valobj dcld_valobj[] =
+{
+ {V_ID, 0, CLUSTER, NAME, CLU_ID, MR_CLUSTER},
+ {V_CHAR, 2},
+};
+
+static struct validate dcld_validate =
+{
+ dcld_valobj,
2,
CLU_ID,
- "svc.clu_id = %d and svc.serv_label = '%s' and svc.serv_cluster = '%s'",
+ "clu_id = %d AND serv_label = '%s' AND serv_cluster = '%s'",
3,
0,
0,
ACE_TYPE, ACE_NAME, MOD1, MOD2, MOD3,
};
+static struct valobj gsin_valobj[] =
+{
+ { V_UPWILD, 0 },
+};
+
static struct validate gsin_validate =
{
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- access_service,
- 0,
- followup_glin,
+ gsin_valobj,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_service,
+ 0,
+ followup_glin,
};
static char *qgsv_fields[] = {
- "enable", "inprogress", "harderror",
- "service",
+ "enable", "inprogress", "harderror",
+ "service",
};
static struct valobj qgsv_valobj[] = {
};
static struct validate qgsv_validate = {
- qgsv_valobj,
- 3,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- qualified_get_server,
+ qgsv_valobj,
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ qualified_get_server,
};
static char *asin_fields[] = {
asin_valobj,
5,
NAME,
- "services.name = uppercase('%s')",
+ "name = uppercase(LEFT('%s',SIZE(name)))",
1,
0,
0,
asin_valobj,
1,
NAME,
- "services.name = uppercase('%s')",
+ "name = uppercase('%s')",
1,
0,
access_service,
asin_valobj,
1,
NAME,
- "services.name = uppercase('%s')",
+ "name = uppercase('%s')",
1,
0,
0,
asin_valobj,
1,
NAME,
- "services.name = uppercase('%s')",
+ "name = uppercase('%s')",
1,
0,
0,
"value3", MOD1, MOD2, MOD3,
};
+static struct valobj gshi_valobj[] = {
+ { V_UPWILD, 0 },
+ { V_UPWILD, 1 },
+};
+
static struct validate gshi_validate = {
- 0,
- 0,
+ gshi_valobj,
+ 2,
0,
0,
0,
};
static char *qgsh_fields[] = {
- "service", "enable", "override", "success", "inprogress", "hosterror",
- "service", MACHINE,
+ "service", "enable", "override", "success", "inprogress", "hosterror",
+ "service", MACHINE,
};
static struct valobj qgsh_valobj[] = {
};
static struct validate qgsh_validate = {
- qgsh_valobj,
- 5,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- qualified_get_serverhost,
+ qgsh_valobj,
+ 5,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ qualified_get_serverhost,
};
static char *ashi_fields[] = {
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
+ "service = uppercase(LEFT('%s',SIZE(service))) AND mach_id = %d",
2,
0,
access_service,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
+ "service = uppercase('%s') AND mach_id = %d",
2,
0,
access_service,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
+ "service = uppercase('%s') AND mach_id = %d",
2,
0,
access_service,
};
static char *sshi_fields[] = {
- "service", MACHINE, "override", "success", "inprogress",
- "hosterror", "errmsg", "ltt", "lts"
+ "service", MACHINE, "override", "success", "inprogress",
+ "hosterror", "errmsg", "ltt", "lts",
};
static struct valobj sshi_valobj[] = {
{V_NAME, 0, "servers", NAME, 0, MR_SERVICE},
+ {V_ID, 1, MACHINE, NAME, MACH_ID, MR_MACHINE}, /** Was this ok to add? */
};
static struct validate sshi_validate =
{
sshi_valobj,
- 1,
+ 2,
0,
0,
0,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
+ "service = uppercase('%s') AND mach_id = %d",
2,
0,
access_service,
static struct validate gsha_validate =
{
- 0,
- 0,
+ VOupwild0,
+ 1,
0,
0,
0,
asha_valobj,
3,
MACH_ID,
- "hostaccess.mach_id = %d",
+ "mach_id = %d",
1,
MACH_ID,
0,
static char *gfsl_fields[] = {
LABEL,
- LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
+ LABEL, TYPE, MACHINE, NAME, "mount", "access", COMMENTS, "owner", "owners",
"create", "lockertype", MOD1, MOD2, MOD3,
};
static char *gfsm_fields[] = {
MACHINE,
- LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
+ LABEL, TYPE, MACHINE, NAME, "mount", "access", COMMENTS, "owner", "owners",
"create", "lockertype", MOD1, MOD2, MOD3,
};
static char *gfsn_fields[] = {
MACHINE, "parition",
- LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
+ LABEL, TYPE, MACHINE, NAME, "mount", "access", COMMENTS, "owner", "owners",
+ "create", "lockertype", MOD1, MOD2, MOD3,
+};
+
+static struct valobj gfsn_valobj[] =
+{
+ {V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_WILD, 1},
+};
+
+static struct validate gfsn_validate = {
+ gfsn_valobj,
+ 2,
+ 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", MOD1, MOD2, MOD3,
};
static char *gfsg_fields[] = {
LIST,
- LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
+ LABEL, TYPE, MACHINE, NAME, "mount", "access", COMMENTS, "owner", "owners",
"create", "lockertype", MOD1, MOD2, MOD3,
};
};
static char *afil_fields[] = {
- LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
+ LABEL, TYPE, MACHINE, NAME, "mount", "access", COMMENTS, "owner", "owners",
"create", "lockertype",
};
afil_valobj,
8,
LABEL,
- "filesys.label = '%s'",
+ "label = LEFT('%s',SIZE(label))",
1,
FILSYS_ID,
0,
};
static char *ufil_fields[] = {
- LABEL, "newlabel", TYPE, MACHINE, NAME, "mount", "access", "comments",
+ LABEL, "newlabel", TYPE, MACHINE, NAME, "mount", "access", COMMENTS,
"owner", "owners", "create", "lockertype",
};
ufil_valobj,
9,
LABEL,
- "filesys.filsys_id = %d",
+ "filsys_id = %d",
1,
FILSYS_ID,
0,
dfil_valobj,
2,
"label",
- "filesys.filsys_id = %d",
+ "filsys_id = %d",
1,
0,
0,
};
static char *gfgm_fields[] = {
- "fsgroup", FILESYS, "sortkey"
-};
+ "fsgroup", FILESYS, "sortkey"
+ };
static struct valobj gfgm_valobj[] = {
- {V_ID, 0, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
- {V_SORT, 1},
- {V_SORT, 0},
+ {V_ID, 0, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
+ {V_SORT, 1},
+ {V_SORT, 0},
};
static struct validate gfgm_validate = {
- gfgm_valobj,
- 3,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
+ gfgm_valobj,
+ 3,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
};
static struct valobj aftg_valobj[] = {
- {V_LOCK, 0, FILESYS, 0, FILSYS_ID, MR_DEADLOCK},
- {V_ID, 0, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
- {V_ID, 1, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
+ {V_LOCK, 0, FILESYS, 0, FILSYS_ID, MR_DEADLOCK},
+ {V_ID, 0, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
+ {V_ID, 1, FILESYS, LABEL, FILSYS_ID, MR_FILESYS},
};
static struct validate aftg_validate = {
- aftg_valobj,
- 3,
- "group_id",
- "fsgroup.group_id = %d and fsgroup.filsys_id = %d",
- 2,
- 0,
- 0,
- 0,
- 0,
+ aftg_valobj,
+ 3,
+ "group_id",
+ "group_id = %d and filsys_id = %d",
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
};
static char *ganf_fields[] = {
MACHINE, DIR, DEVICE, STATUS, "allocated", "size", MOD1, MOD2, MOD3,
};
+static struct valobj gnfp_valobj[] = {
+ {V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_WILD, 1},
+};
+
static struct validate gnfp_validate = {
- VOmach0,
- 1,
+ gnfp_valobj,
+ 2,
0,
0,
0,
anfp_valobj,
2,
DIR,
- "nfsphys.mach_id = %d and nfsphys.dir = '%s'",
+ "mach_id = %d and dir = LEFT('%s',SIZE(dir))",
2,
"nfsphys_id",
0,
anfp_valobj,
2,
DIR,
- "nfsphys.mach_id = %d and nfsphys.dir = '%s'",
+ "mach_id = %d and dir = '%s'",
2,
"nfsphys_id",
0,
set_nfsphys_modtime,
};
+static char *ajnf_fields[] = {
+ MACHINE, DIR, "adjustment",
+};
+
static char *dnfp_fields[] = {
MACHINE, DIR,
};
VOmach0,
1,
DIR,
- "nfsphys.mach_id = %d and nfsphys.dir = '%s'",
+ "mach_id = %d and dir = '%s'",
2,
"nfsphys_id",
0,
};
static struct valobj gqot_valobj[] = {
+ {V_WILD, 0},
{V_TYPE, 1, QUOTA_TYPE, 0, 0, MR_TYPE},
{V_TYPEDATA, 2, 0, 0, 0, MR_ACE},
{V_SORT, 0, 0, 0, 0, 0},
static struct validate gqot_validate = {
gqot_valobj,
- 3,
+ 4,
0,
0,
0,
};
static struct validate gqbf_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
aqot_valobj,
4,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = '%s' and quota.entity_id = %d",
+ "filsys_id = %d and type = '%s' and entity_id = %d",
3,
0,
0,
- 0,
+ prefetch_filesys,
followup_aqot,
};
aqot_valobj,
4,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = '%s' and quota.entity_id = %d",
+ "filsys_id = %d AND type = '%s' AND entity_id = %d",
3,
0,
0,
aqot_valobj,
4,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = '%s' and quota.entity_id = %d",
+ "filsys_id = %d AND type = '%s' AND entity_id = %d",
3,
0,
0,
setup_dqot,
- 0,
+ followup_dqot,
};
static char *gnfq_fields[] = {
};
static struct validate gnfq_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
FILESYS, LOGIN, QUOTA, DIR, MACHINE, MOD1, MOD2, MOD3,
};
+static struct valobj gnqp_valobj[] = {
+ {V_ID, 0, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_WILD, 1},
+};
+
+static struct validate gnqp_validate = { gnqp_valobj, 2, };
+
static char *anfq_fields[] = {
FILESYS, LOGIN, QUOTA,
};
VOfilsys0user1,
3,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = 'USER' and quota.entity_id = %d",
+ "filsys_id = %d AND type = 'USER' AND entity_id = %d",
2,
+ 0, /* object ? */
0,
- 0,
- 0,
+ prefetch_filesys,
followup_aqot,
};
VOfilsys0user1,
3,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = 'USER' and quota.entity_id = %d",
+ "filsys_id = %d AND type = 'USER' AND entity_id = %d",
2,
0,
0,
VOfilsys0user1,
3,
FILSYS_ID,
- "quota.filsys_id = %d and quota.entity_id = %d",
+ "filsys_id = %d AND entity_id = %d",
2,
0,
0,
setup_dqot,
- 0,
+ followup_dqot,
};
static char *glin_fields[] = {
alis_valobj,
4,
NAME,
- "list.name = '%s'",
+ "name = LEFT('%s',SIZE(name))",
1,
LIST_ID,
0,
ulis_valobj,
5,
NAME,
- "list.list_id = %d",
+ "list_id = %d",
1,
LIST_ID,
access_list,
VOlist0,
1,
NAME,
- "list.list_id = %d",
+ "list_id = %d",
1,
0,
access_list,
};
static char *gaus_fields[] = {
- ACE_TYPE, ACE_NAME,
- "use_type", "use_name",
+ ACE_TYPE, ACE_NAME,
+ "use_type", "use_name",
};
static struct valobj gaus_valobj[] = {
};
static struct validate gaus_validate = {
- gaus_valobj,
- 2,
- 0,
- 0,
- 0,
- 0,
- access_member,
- 0,
- get_ace_use,
+ gaus_valobj,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_member,
+ 0,
+ get_ace_use,
};
static char *qgli_fields[] = {
- "active", "publicflg", "hidden", "maillist", "grouplist",
- "list",
+ "active", "publicflg", "hidden", "maillist", "grouplist",
+ "list",
};
static struct valobj qgli_valobj[] = {
};
static struct validate qgli_validate = {
- qgli_valobj,
- 5,
- 0,
- 0,
- 0,
- 0,
- access_qgli,
- 0,
- qualified_get_lists,
+ qgli_valobj,
+ 5,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_qgli,
+ 0,
+ qualified_get_lists,
};
static char *gmol_fields[] = {
get_members_of_list,
};
+static struct validate geml_validate = {
+ VOlist0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ access_visible_list,
+ 0,
+ get_end_members_of_list,
+};
+
static char *glom_fields[] = {
"member_type", "member_name",
"list_name", "active", "publicflg", "hidden", "maillist", "grouplist",
};
static char *gzcl_fields[] = {
- CLASS,
- CLASS, "xmt_type", "xmt_name", "sub_type", "sub_name",
- "iws_type", "iws_name", "iui_type", "iui_name", MOD1, MOD2, MOD3,
+ CLASS,
+ CLASS, "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name", MOD1, MOD2, MOD3,
};
static struct validate gzcl_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
};
static char *azcl_fields[] = {
- CLASS, "xmt_type", "xmt_name", "sub_type", "sub_name",
- "iws_type", "iws_name", "iui_type", "iui_name",
+ CLASS, "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name",
};
static struct valobj azcl_valobj[] = {
azcl_valobj,
9,
CLASS,
- "zephyr.class = '%s'",
+ "class = LEFT('%s',SIZE(class))",
1,
0,
0,
};
static char *uzcl_fields[] = {
- CLASS, "newclass", "xmt_type", "xmt_name", "sub_type", "sub_name",
- "iws_type", "iws_name", "iui_type", "iui_name",
+ CLASS, "newclass", "xmt_type", "xmt_name", "sub_type", "sub_name",
+ "iws_type", "iws_name", "iui_type", "iui_name",
};
static struct valobj uzcl_valobj[] = {
uzcl_valobj,
9,
CLASS,
- "zephyr.class = '%s'",
+ "class = '%s'",
1,
0,
0,
0,
0,
CLASS,
- "zephyr.class = '%s'",
+ "class = '%s'",
1,
0,
0,
static char *gsvc_fields[] = {
SERVICE,
- SERVICE, "protocol", "port", DESC, MOD1, MOD2, MOD3
+ SERVICE, "protocol", "port", DESC, MOD1, MOD2, MOD3,
};
static char *asvc_fields[] = {
- SERVICE, "protocol", "port", DESC
+ SERVICE, "protocol", "port", DESC,
};
static struct validate asvc_validate = {
VOchar0,
1,
NAME,
- "services.name = '%s'",
+ "name = LEFT('%s',SIZE(name))",
1,
0,
0,
};
static char *gpce_fields[] = {
- "printer",
- "printer", "spooling_host", "spool_directory", "rprinter",
- "quotaserver", "authenticate", "price", "comments",
- MOD1, MOD2, MOD3,
+ "printer",
+ "printer", "spooling_host", "spool_directory", "rprinter",
+ "quotaserver", "authenticate", "price", COMMENTS,
+ MOD1, MOD2, MOD3,
};
static struct validate gpce_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
};
static char *apce_fields[] = {
- "printer", "spooling_host", "spool_directory", "rprinter",
- "quotaserver", "authenticate", "price", "comments",
- MOD1, MOD2, MOD3,
+ "printer", "spooling_host", "spool_directory", "rprinter",
+ "quotaserver", "authenticate", "price", COMMENTS,
+ MOD1, MOD2, MOD3,
};
static struct valobj apce_valobj[] = {
- {V_CHAR, 0},
- {V_ID, 1, MACHINE, NAME, MACH_ID, MR_MACHINE},
- {V_ID, 4, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_CHAR, 0},
+ {V_ID, 1, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_ID, 4, MACHINE, NAME, MACH_ID, MR_MACHINE},
};
static struct validate apce_validate = {
apce_valobj,
3,
NAME,
- "printcap.name = '%s'",
+ "name = LEFT('%s',SIZE(name))",
1,
0,
0,
0,
0,
NAME,
- "printcap.name = '%s'",
+ "name = '%s'",
1,
0,
0,
};
static char *gpcp_fields[] = {
- "printer",
- "printer", "spooling_host", "spool_directory", "rprinter", "comments",
- MOD1, MOD2, MOD3,
+ "printer",
+ "printer", "spooling_host", "spool_directory", "rprinter", COMMENTS,
+ MOD1, MOD2, MOD3,
};
static char *gpdm_fields[] = {
- NAME,
- NAME, "rpcnum", "host", MOD1, MOD2, MOD3,
+ NAME,
+ NAME, "rpcnum", "host", MOD1, MOD2, MOD3,
};
static char *apdm_fields[] = {
- NAME, "rpcnum", "host"
-};
+ NAME, "rpcnum", "host"
+ };
static struct valobj apdm_valobj[] = {
- {V_CHAR, 0},
- {V_ID, 2, MACHINE, NAME, MACH_ID, MR_MACHINE},
+ {V_CHAR, 0},
+ {V_ID, 2, MACHINE, NAME, MACH_ID, MR_MACHINE},
};
static struct validate apdm_validate = {
apdm_valobj,
2,
NAME,
- "palladium.name = '%s'",
+ "name = LEFT('%s',SIZE(name))",
1,
0,
0,
0,
0,
NAME,
- "palladium.name = '%s'",
+ "name = '%s'",
1,
0,
0,
static struct valobj aali_valobj[] = {
{V_CHAR, 0},
- {V_TYPE, 1, "alias", 0, 0, MR_TYPE},
+ {V_TYPE, 1, ALIAS, 0, 0, MR_TYPE},
{V_CHAR, 2},
};
aali_valobj,
3,
"trans",
- "alias.name = '%s' and alias.type = '%s' and alias.trans = '%s'",
+ "name = LEFT('%s',SIZE(name)) and type = '%s' and trans = LEFT('%s',SIZE(trans))",
3,
0,
0,
0,
0,
"trans",
- "alias.name = '%s' and alias.type = '%s' and alias.trans = '%s'",
+ "name = '%s' and type = '%s' and trans = '%s'",
3,
0,
0,
VOchar0,
1,
NAME,
- "numvalues.name = '%s'",
+ "name = LEFT('%s',SIZE(name))", /* LEFT() only needed for aval */
1,
0,
0,
"table_name", "appends", "updates", "deletes", MOD1, MOD2, MOD3,
};
+static char *_sdl_fields[] = {
+ "level",
+};
+
+static struct validate _sdl_validate =
+{
+ 0,
+ 0,
+ (char *)0,
+ (char *)0,
+ 0,
+ 0,
+ 0,
+ 0,
+ _sdl_followup,
+};
+
\f
/* Generalized Query Definitions */
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle FROM users u",
galo_fields,
6,
- "users_id != 0",
- 0,
+ "u.users_id != 0",
0,
+ &VDsort0,
},
-
+
{
/* Q_GAAL - GET_ALL_ACTIVE_LOGINS */
"get_all_active_logins",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle FROM users u",
galo_fields,
6,
- "status = 1",
- 0,
+ "u.status = 1",
0,
+ &VDsort0,
},
-
+
+ {
+ /* Q_GUAL - GET_USER_ACCOUNT_BY_LOGIN */
+ "get_user_account_by_login",
+ "gual",
+ RETRIEVE,
+ "u",
+ USERS,
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(str.string), CHAR(u.signature), CHAR(u.secure), CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u, strings str",
+ gual_fields,
+ 15,
+ "u.login LIKE '%s' ESCAPE '*' AND u.users_id != 0 AND u.comment = str.string_id",
+ 1,
+ &gubl_validate,
+ },
+
+ {
+ /* Q_GUAU - GET_USER_ACCOUNT_BY_UID */
+ "get_user_account_by_uid",
+ "guau",
+ RETRIEVE,
+ "u",
+ USERS,
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(str.string), CHAR(u.signature), CHAR(u.secure), CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u, strings str",
+ guau_fields,
+ 15,
+ "u.uid = %s AND u.users_id != 0 AND u.comment = str.string_id",
+ 1,
+ &gubu_validate,
+ },
+
+ {
+ /* Q_GUAN - GET_USER_ACCOUNT_BY_NAME */
+ "get_user_account_by_name",
+ "guan",
+ RETRIEVE,
+ "u",
+ USERS,
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(str.string), CHAR(u.signature), CHAR(u.secure), CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u, strings str",
+ guan_fields,
+ 15,
+ "u.first LIKE '%s' ESCAPE '*' AND u.last LIKE '%s' ESCAPE '*' AND u.users_id != 0 and u.comment = str.string_id",
+ 2,
+ &guan_validate,
+ },
+
+ {
+ /* Q_GUAC - GET_USER_ACCOUNT_BY_CLASS */
+ "get_user_account_by_class",
+ "guac",
+ RETRIEVE,
+ "u",
+ USERS,
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(str.string), CHAR(u.signature), CHAR(u.secure), CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u, strings str",
+ guac_fields,
+ 15,
+ "u.type = uppercase('%s') AND u.users_id != 0 AND u.comment = str.string_id",
+ 1,
+ &VDsortf,
+ },
+
+ {
+ /* Q_GUAM - GET_USER_ACCOUNT_BY_MITID */
+ "get_user_account_by_id",
+ "guai",
+ RETRIEVE,
+ "u",
+ USERS,
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(str.string), CHAR(u.signature), CHAR(u.secure), CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u, strings str",
+ guam_fields,
+ 15,
+ "u.clearid LIKE '%s' ESCAPE '*' AND u.users_id != 0 AND u.comment = str.string_id",
+ 1,
+ &VDwildsortf,
+ },
+
{
/* Q_GUBL - GET_USER_BY_LOGIN */
"get_user_by_login",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), CHAR(type), CHAR(modtime), CHAR(modby), modwith FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u",
gubl_fields,
12,
- "login LIKE '%s' ESCAPE '*' AND users_id != 0",
+ "u.login LIKE '%s' ESCAPE '*' AND u.users_id != 0",
1,
- &gubx_validate,
+ &gubl_validate,
},
-
+
{
/* Q_GUBU - GET_USER_BY_UID */
"get_user_by_uid",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), CHAR(type), CHAR(modtime), CHAR(modby), modwith FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u",
gubu_fields,
12,
- "uid = %s AND users_id != 0",
+ "u.uid = %s AND u.users_id != 0",
1,
- &gubx_validate,
+ &gubu_validate,
},
-
+
{
/* Q_GUBN - GET_USER_BY_NAME */
"get_user_by_name",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), CHAR(type), CHAR(modtime), CHAR(modby), modwith FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u",
gubn_fields,
12,
- "first LIKE '%s' ESCAPE '*' AND last LIKE '%s' ESCAPE '*' AND users_id != 0",
+ "u.first LIKE '%s' ESCAPE '*' AND u.last LIKE '%s' ESCAPE '*' AND u.users_id != 0",
2,
- &VDsortf,
+ &gubn_validate,
},
-
+
{
/* Q_GUBC - GET_USER_BY_CLASS */
"get_user_by_class",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), CHAR(type), CHAR(modtime), CHAR(modby), modwith FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u",
gubc_fields,
12,
- "type = uppercase('%s') AND users_id != 0",
+ "u.type = uppercase('%s') AND u.users_id != 0",
1,
&VDsortf,
},
-
+
{
/* Q_GUBM - GET_USER_BY_MITID */
"get_user_by_mitid",
RETRIEVE,
"u",
USERS,
- "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), CHAR(type), CHAR(modtime), CHAR(modby), modwith FROM users",
+ "CHAR(u.login), CHAR(u.uid), u.shell, CHAR(u.last), CHAR(u.first), u.middle, CHAR(u.status), CHAR(u.clearid), u.type, CHAR(u.modtime), CHAR(u.modby), u.modwith FROM users u",
gubm_fields,
12,
- "clearid LIKE '%s' ESCAPE '*' AND users_id != 0",
+ "u.clearid LIKE '%s' ESCAPE '*' AND u.users_id != 0",
1,
- &VDsortf,
+ &VDwildsortf,
},
-
-
+
+ {
+ /* Q_AUAC - ADD_USER_ACCOUNT */ /* uses prefetch_value() for users_id */
+ "add_user_account",
+ "auac",
+ APPEND,
+ "u",
+ USERS,
+ "INTO users (login, uid, shell, last, first, middle, status, clearid, type, comment, signature, secure, users_id) VALUES ('%s', %s, '%s', '%s', '%s', '%s', %s, '%s', '%s', %d, '%s', %s, %s)",
+ auac_fields,
+ 12,
+ (char *)0,
+ 0,
+ &auac_validate,
+ },
+
{
/* Q_AUSR - ADD_USER */ /* uses prefetch_value() for users_id */
"add_user",
APPEND,
"u",
USERS,
- "INTO users (login, uid, shell, last, first, middle, status, clearid, type, users_id) VALUES ( '%s', %s, '%s', '%s', '%s', '%s', %s, '%s', '%s', %s)",
- ausr_fields,
+ "INTO users (login, uid, shell, last, first, middle, status, clearid, type, comment, signature, secure, users_id) VALUES ('%s', %s, '%s', '%s', '%s', '%s', %s, '%s', '%s', 0, '', 0, %s)",
+ auac_fields,
9,
0,
0,
&ausr_validate,
},
-
+
{
/* Q_RUSR - REGISTER_USER */
"register_user",
0,
&rusr_validate,
},
-
+
+ {
+ /* Q_UUAC - UPDATE_USER_ACCOUNT */
+ "update_user_account",
+ "uuac",
+ UPDATE,
+ "u",
+ USERS,
+ "users SET login = '%s', uid = %s, shell = '%s', last = '%s', first = '%s', middle = '%s', status = %s, clearid = '%s', type = '%s', comment = %d, signature = '%s', secure = %s",
+ uuac_fields,
+ 12,
+ "users_id = %d",
+ 1,
+ &uuac_validate,
+ },
+
{
/* Q_UUSR - UPDATE_USER */
"update_user",
"u",
USERS,
"users SET login = '%s', uid = %s, shell = '%s', last = '%s', first = '%s', middle = '%s', status = %s, clearid = '%s', type = '%s'",
- uusr_fields,
+ uuac_fields,
9,
"users_id = %d",
1,
&uust_validate,
},
+ {
+ /* Q_UUSS - UPDATE_USER_SECURITY_STATUS */
+ "update_user_security_status",
+ "uuss",
+ UPDATE,
+ "u",
+ USERS,
+ "users SET secure = %s",
+ uuss_fields,
+ 1,
+ "users_id = %d",
+ 1,
+ &uust_validate,
+ },
+
{
/* Q_DUSR - DELETE_USER */
"delete_user",
RETRIEVE,
"k",
"krbmap",
- "CHAR(u.login), CHAR(s.string) FROM krbmap k, users u, strings s",
+ "CHAR(u.login), CHAR(str.string) FROM krbmap km, users u, strings str",
gkum_fields,
2,
- "u.login LIKE '%s' ESCAPE '*' AND s.string LIKE '%s' ESCAPE '*' AND k.users_id = u.users_id AND k.string_id = s.string_id",
+ "u.login LIKE '%s' ESCAPE '*' AND str.string LIKE '%s' ESCAPE '*' AND km.users_id = u.users_id AND km.string_id = str.string_id",
2,
- &VDsort2,
+ &VDwild2sort2,
},
{
APPEND,
"k",
"krbmap",
- "INTO krbmap (users_id, string_id) VALUES (%s, %s)",
+ "INTO krbmap (users_id, string_id) VALUES (%d, %d)",
akum_fields,
2,
0,
0,
akum_fields,
0,
- "k.users_id = %d AND k.string_id = %d",
+ "users_id = %d AND string_id = %d",
2,
&dkum_validate,
},
RETRIEVE,
"u",
USERS,
- "CHAR(login), fullname, nickname, home_addr, home_phone, office_addr, office_phone, department, affiliation, CHAR(fmodtime), CHAR(fmodby), fmodwith FROM users",
+ "CHAR(u.login), u.fullname, u.nickname, u.home_addr, u.home_phone, u.office_addr, u.office_phone, u.department, u.affiliation, CHAR(u.fmodtime), CHAR(u.fmodby), u.fmodwith FROM users u",
gfbl_fields,
12,
- "users_id = %d",
+ "u.users_id = %d",
1,
&gfbl_validate,
},
RETRIEVE,
"u",
USERS,
- "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id), CHAR(pmodtime), CHAR(pmodby), pmodwith FROM users",
+ "CHAR(u.login), u.potype, CHAR(u.pop_id) + ':' + CHAR(u.box_id), CHAR(u.pmodtime), CHAR(u.pmodby), u.pmodwith FROM users u",
gpob_fields,
6,
- "users_id = %d",
+ "u.users_id = %d",
1,
&gpob_validate,
},
RETRIEVE,
"u",
USERS,
- "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
+ "CHAR(u.login), u.potype, CHAR(u.pop_id) + ':' + CHAR(u.box_id) FROM users u",
gpox_fields,
3,
- "potype != 'NONE'",
+ "u.potype != 'NONE'",
0,
&gpox_validate,
},
RETRIEVE,
"u",
USERS,
- "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
+ "CHAR(u.login), u.potype, CHAR(u.pop_id) + ':' + CHAR(u.box_id) FROM users u",
gpox_fields,
3,
- "potype = 'POP'",
+ "u.potype = 'POP'",
0,
&gpox_validate
},
RETRIEVE,
"u",
USERS,
- "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
+ "CHAR(u.login), u.potype, CHAR(u.pop_id) + ':' + CHAR(u.box_id) FROM users u",
gpox_fields,
3,
- "potype = 'SMTP'",
+ "u.potype = 'SMTP'",
0,
&gpox_validate
},
RETRIEVE,
"m",
MACHINE,
- "CHAR(name), type, CHAR(modtime), CHAR(modby), modwith FROM machine",
+ "CHAR(m.name), m.vendor, CHAR(m.modtime), CHAR(m.modby), m.modwith FROM machine m",
gmac_fields,
5,
- "name = uppercase('%s') AND mach_id != 0",
-/* "name LIKE '%s' ESCAPE '*' AND mach_id != 0", */ /* Pattern matching */
+ "m.name LIKE '%s' ESCAPE '*' AND m.mach_id != 0",
1,
- &VDsortf,
+ &VDupwildsortf,
+ },
+
+ {
+ /* Q_GHST - GET_HOST */
+ "get_host",
+ "ghst",
+ RETRIEVE,
+ "m",
+ MACHINE,
+ "CHAR(m.name), m.vendor, m.model, m.os, m.location, m.contact, CHAR(m.use), CHAR(m.status), CHAR(m.statuschange), CHAR(s.name), m.address, m.owner_type, CHAR(m.owner_id), CHAR(m.acomment), CHAR(m.ocomment), CHAR(m.created), CHAR(m.creator), CHAR(m.inuse), CHAR(m.modtime), CHAR(m.modby), m.modwith FROM machine m, subnet s",
+ ghst_fields,
+ 21,
+ "m.name LIKE '%s' ESCAPE '*' AND m.address LIKE '%s' ESCAPE '*' AND m.location LIKE '%s' ESCAPE '*' AND m.contact LIKE '%s' ESCAPE '*' AND m.mach_id != 0 AND s.snet_id = m.snet_id",
+ 4,
+ &ghst_validate,
},
{
- /* Q_AMAC - ADD_MACHINE */ /* uses prefetch_value() for mach_id */
- "add_machine",
- "amac",
+ /* Q_AHST - ADD_HOST */ /* uses prefetch_value() for mach_id */
+ "add_host",
+ "ahst",
APPEND,
"m",
MACHINE,
- "INTO machine (name, type, mach_id) VALUES (uppercase('%s'),'%s',%s)",
- amac_fields,
- 2,
+ "INTO machine (name, vendor, model, os, location, contact, use, status, statuschange, snet_id, address, owner_type, owner_id, acomment, ocomment, created, inuse, mach_id, creator) VALUES (uppercase('%s'),uppercase('%s'),uppercase('%s'),uppercase('%s'),uppercase('%s'),'%s',%s,%s,date('now'),%d,'%s','%s',%d,%d,%d,date('now'),date('now'),%s,%s)",
+ ahst_fields,
+ 14,
0,
0,
- &amac_validate,
+ &ahst_validate,
},
{
- /* Q_UMAC - UPDATE_MACHINE */
- "update_machine",
- "umac",
+ /* Q_UHST - UPDATE_HOST */
+ "update_host",
+ "uhst",
UPDATE,
"m",
MACHINE,
- "machine SET name = uppercase('%s'), type = '%s'",
- umac_fields,
- 2,
+ "machine SET name=uppercase('%s'),vendor=uppercase('%s'),model=uppercase('%s'),os=uppercase('%s'),location=uppercase('%s'),contact='%s',use=%s,status=%s,snet_id=%d,address='%s',owner_type='%s',owner_id=%d,acomment=%d,ocomment=%d",
+ uhst_fields,
+ 14,
"mach_id = %d",
1,
- &umac_validate,
+ &uhst_validate,
},
{
- /* Q_DMAC - DELETE_MACHINE */
- "delete_machine",
- "dmac",
+ /* Q_DHST - DELETE_HOST */
+ "delete_host",
+ "dhst",
DELETE,
"m",
MACHINE,
(char *)0,
- dmac_fields,
+ dhst_fields,
0,
"mach_id = %d",
1,
- &dmac_validate,
+ &dhst_validate,
+ },
+
+ {
+ /* Q_GHAL - GET_HOSTALIAS */
+ "get_hostalias",
+ "ghal",
+ RETRIEVE,
+ "a",
+ "hostalias",
+ "CHAR(a.name), CHAR(m.name) FROM hostalias a, machine m",
+ ghal_fields,
+ 2,
+ "m.mach_id = a.mach_id and a.name LIKE '%s' ESCAPE '*' AND m.name LIKE '%s' ESCAPE '*'",
+ 2,
+ &ghal_validate,
+ },
+
+ {
+ /* Q_AHAL - ADD_HOSTALIAS */
+ "add_hostalias",
+ "ahal",
+ APPEND,
+ "a",
+ "hostalias",
+ "INTO hostalias (name, mach_id) VALUES (uppercase('%s'),%d)",
+ ghal_fields,
+ 2,
+ 0,
+ 0,
+ &ahal_validate,
+ },
+
+ {
+ /* Q_DHAL - DELETE_HOSTALIAS */
+ "delete_hostalias",
+ "dhal",
+ DELETE,
+ "a",
+ "hostalias",
+ (char *)0,
+ ghal_fields,
+ 0,
+ "name = uppercase('%s') AND mach_id = %d",
+ 2,
+ &dhal_validate,
+ },
+
+ {
+ /* Q_GSNT - GET_SUBNET */
+ "get_subnet",
+ "gsnt",
+ RETRIEVE,
+ "s",
+ SUBNET,
+ "CHAR(s.name), CHAR(s.description), CHAR(s.saddr), CHAR(s.mask), CHAR(s.low), CHAR(s.high), s.prefix, s.owner_type, CHAR(s.owner_id), CHAR(s.modtime), CHAR(s.modby), s.modwith FROM subnet s",
+ gsnt_fields,
+ 12,
+ "s.name LIKE '%s' ESCAPE '*' and s.snet_id != 0",
+ 1,
+ &gsnt_validate,
+ },
+
+ {
+ /* Q_ASNT - ADD_SUBNET */
+ "add_subnet",
+ "asnt",
+ APPEND,
+ "s",
+ SUBNET,
+ "INTO subnet (name, description, saddr, mask, low, high, prefix, owner_type, owner_id, snet_id) VALUES (uppercase('%s'), '%s', %s, %s, %s, %s, '%s', '%s', %d, %s)",
+ asnt_fields,
+ 9,
+ 0,
+ 0,
+ &asnt_validate,
+ },
+
+ {
+ /* Q_USNT - UPDATE_SUBNET */
+ "update_subnet",
+ "usnt",
+ UPDATE,
+ "s",
+ SUBNET,
+ "subnet SET name=uppercase('%s'), description='%s', saddr=%s, mask=%s, low=%s, high=%s, prefix='%s', owner_type='%s', owner_id=%d",
+ usnt_fields,
+ 9,
+ "snet_id = %d",
+ 1,
+ &usnt_validate,
+ },
+
+ {
+ /* Q_DSNT - DELETE_SUBNET */
+ "delete_subnet",
+ "dsnt",
+ DELETE,
+ "s",
+ SUBNET,
+ (char *)0,
+ dsnt_fields,
+ 0,
+ "snet_id = %d",
+ 1,
+ &dsnt_validate,
},
{
RETRIEVE,
"c",
CLUSTER,
- "CHAR(name), description, location, CHAR(modtime), CHAR(modby), modwith FROM cluster",
+ "CHAR(c.name), c.description, c.location, CHAR(c.modtime), CHAR(c.modby), c.modwith FROM cluster c",
gclu_fields,
6,
- "name LIKE '%s' ESCAPE '*' AND clu_id != 0",
+ "c.name LIKE '%s' ESCAPE '*' AND c.clu_id != 0",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
"get_machine_to_cluster_map",
"gmcm",
RETRIEVE,
- "map",
+ "mcm",
"mcmap",
- "CHAR(m.name), CHAR(c.name) FROM machine m, cluster c, mcmap map",
+ "CHAR(m.name), CHAR(c.name) FROM machine m, cluster c, mcmap mcm",
gmcm_fields,
2,
- "m.name = uppercase('%s') AND c.name LIKE '%s' ESCAPE '*' AND map.clu_id = c.clu_id AND map.mach_id = m.mach_id",
+ "m.name LIKE '%s' ESCAPE '*' AND c.name LIKE '%s' ESCAPE '*' AND mcm.clu_id = c.clu_id AND mcm.mach_id = m.mach_id",
2,
- &VDsort2,
+ &gmcm_validate,
},
{
"add_machine_to_cluster",
"amtc",
APPEND,
- "m",
+ "mcm",
"mcmap",
"INTO mcmap (mach_id, clu_id) VALUES (%d, %d)",
gmcm_fields,
"delete_machine_from_cluster",
"dmfc",
DELETE,
- "m",
+ "mcm",
"mcmap",
0,
gmcm_fields,
"get_cluster_data",
"gcld",
RETRIEVE,
- "s",
"svc",
- "CHAR(c.name), CHAR(s.serv_label), s.serv_cluster FROM svc s, cluster c",
+ "svc",
+ "CHAR(c.name), CHAR(svc.serv_label), svc.serv_cluster FROM svc svc, cluster c",
gcld_fields,
3,
- "c.clu_id = s.clu_id AND c.name LIKE '%s' ESCAPE '*' AND s.serv_label LIKE '%s' ESCAPE '*'",
+ "c.clu_id = svc.clu_id AND c.name LIKE '%s' ESCAPE '*' AND svc.serv_label LIKE '%s' ESCAPE '*'",
2,
- &VDsort2,
+ &VDwild2sort2,
},
{
"add_cluster_data",
"acld",
APPEND,
- "s",
+ "svc",
"svc",
"INTO svc (clu_id, serv_label, serv_cluster) VALUES (%d,'%s','%s')",
acld_fields,
"delete_cluster_data",
"dcld",
DELETE,
- "s",
+ "svc",
"svc",
(char *)0,
acld_fields,
0,
- "clu_id = %d AND serv_label LIKE '%s' ESCAPE '*' AND serv_cluster = '%s'", /** wildcard completion for serv_cluster ??? **/
+ "clu_id = %d AND serv_label = '%s' AND serv_cluster = '%s'",
3,
- &acld_validate,
+ &dcld_validate,
},
{
RETRIEVE,
"s",
"servers",
- "CHAR(name), CHAR(update_int), target_file, script, CHAR(dfgen), CHAR(dfcheck), type, CHAR(enable), CHAR(inprogress), CHAR(harderror), errmsg, acl_type, CHAR(acl_id), CHAR(modtime), CHAR(modby), modwith FROM servers",
+ "CHAR(s.name), CHAR(s.update_int), s.target_file, s.script, CHAR(s.dfgen), CHAR(s.dfcheck), s.type, CHAR(s.enable), CHAR(s.inprogress), CHAR(s.harderror), s.errmsg, s.acl_type, CHAR(s.acl_id), CHAR(s.modtime), CHAR(s.modby), s.modwith FROM servers s",
gsin_fields,
16,
- "name = uppercase('%s')",
+ "s.name LIKE '%s' ESCAPE '*'",
1,
&gsin_validate,
},
RETRIEVE,
"sh",
"serverhosts",
- "CHAR(sh.service), CHAR(m.name), CHAR(sh.enable), CHAR(sh.override), CHAR(sh.success), CHAR(sh.inprogress), CHAR(sh.hosterror), sh.hosterrmsg, CHAR(sh.ltt), CHAR(sh.lts), CHAR(sh.value1), CHAR(sh.value2), sh.value, CHAR(sh.modtime), CHAR(sh.modby), sh.modwith FROM serverhosts sh, machine m",
+ "CHAR(sh.service), CHAR(m.name), CHAR(sh.enable), CHAR(sh.override), CHAR(sh.success), CHAR(sh.inprogress), CHAR(sh.hosterror), sh.hosterrmsg, CHAR(sh.ltt), CHAR(sh.lts), CHAR(sh.value1), CHAR(sh.value2), sh.value3, CHAR(sh.modtime), CHAR(sh.modby), sh.modwith FROM serverhosts sh, machine m",
gshi_fields,
16,
- "sh.service = uppercase('%s') AND m.name = uppercase('%s') AND m.mach_id = sh.mach_id",
+ "sh.service LIKE '%s' ESCAPE '*' AND m.name LIKE '%s' ESCAPE '*' AND m.mach_id = sh.mach_id",
2,
&gshi_validate,
},
{
- /* Q_QGSV - QUALIFIED_GET_SERVER_HOST */
+ /* Q_QGSH - QUALIFIED_GET_SERVER_HOST */
"qualified_get_server_host",
"qgsh",
RETRIEVE,
"serverhosts SET override = %s, success = %s, inprogress = %s, hosterror = %s, hosterrmsg = '%s', ltt = %s, lts = %s",
sshi_fields,
7,
-#ifdef NEVER
- "s.service = uppercase('%s') AND s.mach_id = machine.mach_id AND machine.name = '%s'", /** Turn the machine name into a mach_id in the setup routine **/
-#else
"service = uppercase('%s') AND mach_id = %d",
-#endif
2,
&sshi_validate,
},
"CHAR(m.name), ha.acl_type, CHAR(ha.acl_id), CHAR(ha.modtime), CHAR(ha.modby), ha.modwith FROM hostaccess ha, machine m",
gsha_fields,
6,
- "m.name = uppercase('%s') AND ha.mach_id = m.mach_id",
+ "m.name LIKE '%s' ESCAPE '*' AND ha.mach_id = m.mach_id",
1,
&gsha_validate,
},
"CHAR(sh.service), CHAR(m.name) FROM serverhosts sh, machine m",
gslo_fields,
2,
- "sh.service = uppercase('%s') AND sh.mach_id = m.mach_id",
+ "sh.service LIKE '%s' ESCAPE '*' AND sh.mach_id = m.mach_id",
1,
- 0,
+ &VDupwild0,
},
{
RETRIEVE,
"fs",
FILESYS,
- "CHAR(fs.label), fs.type, CHAR(m.name), fs.name, fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "CHAR(fs.label), fs.type, CHAR(m.name), CHAR(fs.name), fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
gfsl_fields,
14,
"fs.label LIKE '%s' ESCAPE '*' AND fs.mach_id = m.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
RETRIEVE,
"fs",
FILESYS,
- "CHAR(fs.label), fs.type, CHAR(m.name), fs.name, fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "CHAR(fs.label), fs.type, CHAR(m.name), CHAR(fs.name), fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
gfsm_fields,
14,
"fs.mach_id = %d AND m.mach_id = fs.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id",
},
{
- /* Q_GFSN - GET_FILESYS_BY_NFSPHYS */ /** Check to make sure the stmt_buf is long enough for this query! **/
+ /* Q_GFSN - GET_FILESYS_BY_NFSPHYS */
"get_filesys_by_nfsphys",
"gfsn",
RETRIEVE,
"fs",
FILESYS,
- "CHAR(fs.label), fs.type, CHAR(m.name), fs.name, fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l, nfsphys np",
+ "CHAR(fs.label), fs.type, CHAR(m.name), CHAR(fs.name), fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l, nfsphys np",
gfsn_fields,
14,
- "fs.mach_id = %d AND m.mach_id = fs.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id AND np.nfsphys_id = fs.phys_id AND np.dir = '%s' AND fs.type = 'NFS'",
+ "fs.mach_id = %d AND m.mach_id = fs.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id AND np.nfsphys_id = fs.phys_id AND np.dir LIKE '%s' ESCAPE '*' AND fs.type = 'NFS'",
2,
- &gfsm_validate,
+ &gfsn_validate,
},
{
RETRIEVE,
"fs",
FILESYS,
- "CHAR(fs.label), fs.type, CHAR(m.name), fs.name, fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "CHAR(fs.label), fs.type, CHAR(m.name), CHAR(fs.name), fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
gfsg_fields,
14,
"fs.owners = %d AND m.mach_id = fs.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id",
&gfsg_validate,
},
+ {
+ /* Q_GFSP - GET_FILESYS_BY_PATH */
+ "get_filesys_by_path",
+ "gfsp",
+ RETRIEVE,
+ "fs",
+ FILESYS,
+ "CHAR(fs.label), fs.type, CHAR(m.name), CHAR(fs.name), fs.mount, fs.access, fs.comments, CHAR(u.login), CHAR(l.name), CHAR(fs.createflg), fs.lockertype, CHAR(fs.modtime), CHAR(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ gfsp_fields,
+ 14,
+ "fs.name LIKE '%s' ESCAPE '*' AND m.mach_id = fs.mach_id AND fs.owner = u.users_id AND fs.owners = list_id",
+ 1,
+ &VDwildsortf,
+ },
+
{
/* Q_AFIL - ADD_FILESYS */ /* uses prefetch_value() for filsys_id */
"add_filesys",
},
{
- /* Q_AFTG - ADD_FILESYS_TO_FSGROUP */ /** Needs subselect */
+ /* Q_AFTG - ADD_FILESYS_TO_FSGROUP */
"add_filesys_to_fsgroup",
"aftg",
APPEND,
"fg",
"fsgroup",
- "INTO fsgroup (group_id,filsys_id,key) VALUES (filesys.filsys_id, %d, '%s')",
+ "INTO fsgroup (group_id,filsys_id,key) VALUES (%d, %d, '%s')",
gfgm_fields,
- 2,
- "filesys.filsys_id = %d AND filesys.type = 'FSGROUP'",
- 1,
+ 3,
+ (char *)0,
+ 0,
&aftg_validate,
},
RETRIEVE,
"np",
"nfsphys",
- "CHAR(m.name), np.dir, np.device, CHAR(np.status), CHAR(np.allocated), CHAR(np.size), CHAR(np.modtime), CHAR(np.modby), np.modwith FROM nfsphys np, machine m",
+ "CHAR(m.name), CHAR(np.dir), np.device, CHAR(np.status), CHAR(np.allocated), CHAR(np.partsize), CHAR(np.modtime), CHAR(np.modby), np.modwith FROM nfsphys np, machine m",
ganf_fields,
9,
"m.mach_id = np.mach_id",
RETRIEVE,
"np",
"nfsphys",
- "CHAR(m.name), np.dir, np.device, CHAR(np.status), CHAR(np.allocated), CHAR(np.size), CHAR(np.modtime), CHAR(np.modby), np.modwith FROM nfsphys np, machine m",
+ "CHAR(m.name), CHAR(np.dir), np.device, CHAR(np.status), CHAR(np.allocated), CHAR(np.partsize), CHAR(np.modtime), CHAR(np.modby), np.modwith FROM nfsphys np, machine m",
gnfp_fields,
9,
- "np.mach_id = %d AND np.dir = '%s' AND m.mach_id = np.mach_id",
+ "np.mach_id = %d AND np.dir LIKE '%s' ESCAPE '*' AND m.mach_id = np.mach_id",
2,
&gnfp_validate,
},
APPEND,
"np",
"nfsphys",
- "INTO nfsphys (mach_id, dir, device, status, allocated, size, nfsphys_id) VALUES (%d, '%s', '%s', %s, %s, %s, %s)",
+ "INTO nfsphys (mach_id, dir, device, status, allocated, partsize, nfsphys_id) VALUES (%d, '%s', '%s', %s, %s, %s, %s)",
ganf_fields,
6,
0,
UPDATE,
"np",
"nfsphys",
- "nfsphys SET device = '%s', status = '%s', allocated = %s, size = %s",
- gnfp_fields,
+ "nfsphys SET device = '%s', status = %s, allocated = %s, partsize = %s",
+ ganf_fields,
4,
- "mach_id = %d AND dir = '%s'",
+ "mach_id = %d AND dir = '%s'",
2,
&unfp_validate,
},
"np",
"nfsphys",
"nfsphys SET allocated = allocated + %s",
- dnfp_fields,
+ ajnf_fields,
1,
"mach_id = %d AND dir = '%s'",
2,
},
{
- /* Q_AQOT - ADD_QUOTA */ /** Needs subselect */
+ /* Q_AQOT - ADD_QUOTA */ /* prefetch_filsys() gets last 1 value */
"add_quota",
"aqot",
APPEND,
- "q",
+ 0,
QUOTA,
- "INTO quota (filsys_id, type, entity_id, quota, phys_id) VALUES (filesys.filsys_id, '%s', %d, %s, filesys.phys_id)",
+ "INTO quota (filsys_id, type, entity_id, quota, phys_id) VALUES ('%s', %d, %d, %s, %s)",
aqot_fields,
- 3,
- "filesys.filsys_id = %d",
- 1,
+ 4,
+ (char *)0,
+ 0,
&aqot_validate,
},
"update_quota",
"uqot",
UPDATE,
- "q",
+ 0,
QUOTA,
"quota SET quota = %s",
aqot_fields,
1,
- "filsys_id = %d AND type = '%s' AND entity_id = %d",
+ 0,
3,
&uqot_validate,
},
"delete_quota",
"dqot",
DELETE,
- "q",
+ 0,
QUOTA,
(char *)0,
aqot_fields,
0,
- "filsys_id = %d AND type = '%s' AND entity_id = %d",
+ 0,
3,
&dqot_validate,
},
"CHAR(fs.label), CHAR(u.login), CHAR(q.quota), CHAR(q.phys_id), CHAR(m.name), CHAR(q.modtime), CHAR(q.modby), q.modwith FROM quota q, filesys fs, users u, machine m",
gnfq_fields,
8,
- "fs.label = '%s' AND q.type = 'USER' AND q.entity_id = u.users_id AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id AND u.login = '%s'",
+ "fs.label LIKE '%s' ESCAPE '*' AND q.type = 'USER' AND q.entity_id = u.users_id AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id AND u.login = '%s'",
2,
&gnfq_validate,
},
RETRIEVE,
"q",
QUOTA,
- "CHAR(fs.label), CHAR(u.login), CHAR(q.quota), np.dir, CHAR(m.name) FROM quota q, filesys fs, users u, nfsphys np, machine m",
+ "CHAR(fs.label), CHAR(u.login), CHAR(q.quota), CHAR(np.dir), CHAR(m.name) FROM quota q, filesys fs, users u, nfsphys np, machine m",
gnqp_fields,
5,
- "np.mach_id = %d AND np.dir = '%s' AND q.phys_id = np.nfsphys_id AND fs.filsys_id = q.filsys_id AND q.type = 'USER' AND u.users_id = q.entity_id AND m.mach_id = np.mach_id",
+ "np.mach_id = %d AND np.dir LIKE '%s' ESCAPE '*' AND q.phys_id = np.nfsphys_id AND fs.filsys_id = q.filsys_id AND q.type = 'USER' AND u.users_id = q.entity_id AND m.mach_id = np.mach_id",
2,
- &VDmach,
+ &gnqp_validate,
},
{
- /* Q_ANFQ - ADD_NFS_QUOTA */ /** Needs subselect */
+ /* Q_ANFQ - ADD_NFS_QUOTA */ /* prefetch_filsys() gets last 1 value */
"add_nfs_quota",
"anfq",
APPEND,
- "q",
+ 0,
QUOTA,
- "INTO quota (filsys_id, type, entity_id, quota, phys_id) VALUES (filesys.filsys_id, 'USER', %d, %s, filesys.phys_id)",
+ "INTO quota (type, filsys_id, entity_id, quota, phys_id ) VALUES ('USER', %d, %d, %s, %s)",
anfq_fields,
- 2,
- "filesys.filsys_id = %d",
- 1,
+ 3,
+ (char *)0,
+ 0,
&anfq_validate,
},
{
- /* Q_UNFQ - UPDATE_NFS_QUOTA */
+ /* Q_UNFQ - UPDATE_NFS_QUOTA */
"update_nfs_quota",
"unfq",
UPDATE,
- "q",
+ 0,
QUOTA,
"quota SET quota = %s",
anfq_fields,
1,
- "filsys_id = %d AND type = 'USER' AND entity_id = %d",
+ 0,
2,
&unfq_validate,
},
"delete_nfs_quota",
"dnfq",
DELETE,
- "q",
+ 0,
QUOTA,
(char *)0,
anfq_fields,
0,
- "filsys_id = %d AND type = 'USER' AND entity_id = %d",
+ 0,
2,
&dnfq_validate,
},
glin_fields,
13,
0,
- 1,
- &glin_validate,
+ 1,
+ &glin_validate,
},
{
RETRIEVE,
"l",
LIST,
- "CHAR(name) FROM list",
+ "CHAR(l.name) FROM list l",
glin_fields,
1,
- "name LIKE '%s' ESCAPE '*' AND list_id != 0",
+ "l.name LIKE '%s' ESCAPE '*' AND l.list_id != 0",
1,
- 0
+ &VDwild0,
},
{
&gmol_validate,
},
+ {
+ /* Q_GEML - GET_END_MEMBERS_OF_LIST */
+ "get_end_members_of_list",
+ "geml",
+ RETRIEVE,
+ (char *)0,
+ "imembers",
+ (char *)0,
+ gmol_fields,
+ 0,
+ (char *)0,
+ 1,
+ &geml_validate,
+ },
+
{
/* Q_GLOM - GET_LISTS_OF_MEMBER */
"get_lists_of_member",
RETRIEVE,
"z",
"zephyr",
- "CHAR(class), xmt_type, CHAR(xmt_id),sub_type, CHAR(sub_id),iws_type, CHAR(iws_id),iui_type, CHAR(iui_id), CHAR(modtime), CHAR(modby), modwith FROM zephyr",
+ "CHAR(z.class), z.xmt_type, CHAR(z.xmt_id), z.sub_type, CHAR(z.sub_id), z.iws_type, CHAR(z.iws_id), z.iui_type, CHAR(z.iui_id), CHAR(z.modtime), CHAR(z.modby), z.modwith FROM zephyr z",
gzcl_fields,
12,
- "class LIKE '%s' ESCAPE '*'",
+ "z.class LIKE '%s' ESCAPE '*'",
1,
&gzcl_validate,
},
UPDATE,
"z",
"zephyr",
- "zephyr SET class = '%s', xmt_type = '%d', xmt_id = %d, sub_type = '%s', sub_id = %d, iws_type = '%s', iws_id = %d, iui_type = '%s', iui_id = %d",
+ "zephyr SET class = '%s', xmt_type = '%s', xmt_id = %d, sub_type = '%s', sub_id = %d, iws_type = '%s', iws_id = %d, iui_type = '%s', iui_id = %d",
uzcl_fields,
9,
- "class LIKE '%s' ESCAPE '*'",
+ "class = '%s'",
1,
&uzcl_validate,
},
0,
uzcl_fields,
0,
- "class LIKE '%s' ESCAPE '*'",
+ "class = '%s'",
1,
&dzcl_validate,
},
"get_service",
"gsvc",
RETRIEVE,
- "s",
+ "ss",
"services",
- "CHAR(name), protocol, CHAR(port), description, CHAR(modtime), CHAR(modby), modwith FROM services",
+ "CHAR(ss.name), ss.protocol, CHAR(ss.port), ss.description, CHAR(ss.modtime), CHAR(ss.modby), ss.modwith FROM services ss",
gsvc_fields,
7,
- "name LIKE '%s' ESCAPE '*'",
+ "ss.name LIKE '%s' ESCAPE '*'",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
"add_service",
"asvc",
APPEND,
- "s",
+ "ss",
"services",
"INTO services (name, protocol, port, description) VALUES ('%s','%s',%s,'%s')",
asvc_fields,
"delete_service",
"dsvc",
DELETE,
- "s",
+ "ss",
"services",
0,
asvc_fields,
0,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&asvc_validate,
},
"get_printcap_entry",
"gpce",
RETRIEVE,
- "p",
+ "pc",
"printcap",
- "CHAR(p.name), CHAR(m.name), p.dir, p.rp, CHAR(p.quotaserver), CHAR(p.auth), CHAR(p.price), p.comments, CHAR(p.modtime), CHAR(p.modby), p.modwith FROM printcap p, machine m",
+ "CHAR(pc.name), CHAR(m.name), pc.dir, pc.rp, CHAR(pc.quotaserver), CHAR(pc.auth), CHAR(pc.price), pc.comments, CHAR(pc.modtime), CHAR(pc.modby), pc.modwith FROM printcap pc, machine m",
gpce_fields,
11,
- "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
+ "pc.name LIKE '%s' ESCAPE '*' AND m.mach_id = pc.mach_id",
1,
&gpce_validate,
},
"add_printcap_entry",
"apce",
APPEND,
- "p",
+ "pc",
"printcap",
"INTO printcap (name, mach_id, dir, rp, quotaserver, auth, price, comments) VALUES ('%s',%d,'%s','%s',%d,%s,%s,'%s')",
apce_fields,
"delete_printcap_entry",
"dpce",
DELETE,
- "p",
+ "pc",
"printcap",
0,
apce_fields,
0,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&dpce_validate,
},
"get_printcap",
"gpcp",
RETRIEVE,
- "p",
+ "pc",
"printcap",
- "CHAR(p.name), CHAR(m.name), p.dir, p.rp, p.comments, CHAR(p.modtime), CHAR(p.modby), p.modwith FROM printcap p, machine m",
+ "CHAR(pc.name), CHAR(m.name), pc.dir, pc.rp, pc.comments, CHAR(pc.modtime), CHAR(pc.modby), pc.modwith FROM printcap pc, machine m",
gpcp_fields,
8,
- "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
+ "pc.name LIKE '%s' ESCAPE '*' AND m.mach_id = pc.mach_id",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
"delete_printcap",
"dpcp",
DELETE,
- "p",
+ "pc",
"printcap",
0,
apce_fields,
0,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&dpce_validate,
},
"get_palladium",
"gpdm",
RETRIEVE,
- "p",
+ "pal",
"palladium",
- "CHAR(p.name), CHAR(p.ident), CHAR(m.name), CHAR(p.modtime), CHAR(p.modby), p.modwith FROM palladium p, machine m",
+ "CHAR(pal.name), CHAR(pal.ident), CHAR(m.name), CHAR(pal.modtime), CHAR(pal.modby), pal.modwith FROM palladium pal, machine m",
gpdm_fields,
6,
- "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
+ "pal.name LIKE '%s' ESCAPE '*' AND m.mach_id = pal.mach_id",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
"add_palladium",
"apdm",
APPEND,
- "p",
+ "pal",
"palladium",
"INTO palladium (name, ident, mach_id) VALUES ('%s',%s,%d)",
apdm_fields,
"delete_palladium",
"dpdm",
DELETE,
- "p",
+ "pal",
"palladium",
0,
apdm_fields,
0,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&dpdm_validate,
},
"gali",
RETRIEVE,
"a",
- "alias",
- "CHAR(name), CHAR(type), CHAR(trans) FROM alias",
+ ALIAS,
+ "CHAR(a.name), CHAR(a.type), CHAR(a.trans) FROM alias a",
gali_fields,
3,
- "name LIKE '%s' ESCAPE '*' AND type LIKE '%s' ESCAPE '*' AND trans LIKE '%s' ESCAPE '*'",
+ "a.name LIKE '%s' ESCAPE '*' AND a.type LIKE '%s' ESCAPE '*' AND a.trans LIKE '%s' ESCAPE '*'",
3,
- 0,
+ &VDwild3sort1,
},
{
"aali",
APPEND,
"a",
- "alias",
+ ALIAS,
"INTO alias (name, type, trans) VALUES ('%s', '%s', '%s')",
aali_fields,
3,
"dali",
DELETE,
"a",
- "alias",
+ ALIAS,
(char *)0,
aali_fields,
0,
- "name LIKE '%s' ESCAPE '*' AND type LIKE '%s' ESCAPE '*' AND trans LIKE '%s' ESCAPE '*'",
+ "name = '%s' AND type = '%s' AND trans = '%s'",
3,
&dali_validate,
},
"get_value",
"gval",
RETRIEVE,
- "v",
+ "val",
"numvalues",
- "CHAR(value) FROM numvalues",
+ "CHAR(val.value) FROM numvalues val",
gval_fields,
1,
- "name LIKE '%s' ESCAPE '*'",
+ "val.name = '%s'",
1,
&gval_validate,
},
"add_value",
"aval",
APPEND,
- "v",
+ "val",
"numvalues",
"INTO numvalues (name, value) VALUES ('%s', %s)",
aval_fields,
"update_value",
"uval",
UPDATE,
- "v",
+ "val",
"numvalues",
"numvalues SET value = %s",
aval_fields,
1,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&aval_validate,
},
"delete_value",
"dval",
DELETE,
- "v",
+ "val",
"numvalues",
(char *)0,
dval_fields,
0,
- "name LIKE '%s' ESCAPE '*'",
+ "name = '%s'",
1,
&aval_validate,
},
RETRIEVE,
"tbs",
"tblstats",
- "table_name, CHAR(appends), CHAR(updates), CHAR(deletes), CHAR(modtime) FROM tblstats",
+ "tbs.table_name, CHAR(tbs.appends), CHAR(tbs.updates), CHAR(tbs.deletes), CHAR(tbs.modtime) FROM tblstats tbs",
gats_fields,
5,
(char *)0,
0,
},
+ {
+ /* Q__SDL - _SET_DEBUG_LEVEL */
+ "_set_debug_level",
+ "_sdl",
+ UPDATE,
+ (char *)0,
+ (char *)0,
+ (char *)0,
+ _sdl_fields,
+ 1,
+ (char *)0,
+ 0,
+ &_sdl_validate,
+ },
+
};
int QueryCount2 = (sizeof Queries2 / sizeof (struct query));