int access_filesys();
/* Query Setup Routines */
+int prefetch_value();
+int prefetch_filesys();
int setup_ausr();
int setup_dusr();
int setup_spop();
int setup_afil();
int setup_ufil();
int setup_dfil();
+int setup_aftg();
int setup_dnfp();
int setup_dqot();
int setup_sshi();
static char MACH_ID[] = "mach_id";
static char MACHINE[] = "machine";
static char MIDDLE[] = "middle";
-static char MIT_ID[] = "mit_id";
+static char MIT_ID[] = "clearid";
static char MOD1[] = "modtime";
static char MOD2[] = "modby";
static char MOD3[] = "modwith";
*/
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,
followup_fix_modby,
};
+static struct validate VDwildsortf = {
+ VOwild0sort,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
+static struct validate VDupwildsortf = {
+ VOupwild0sort,
+ 2,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ followup_fix_modby,
+};
+
\f
/* Query data */
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,
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,
ausr_valobj,
7,
LOGIN,
- "users.login = \"%s\"",
+ "users.login = LEFT('%s',SIZE(users.login))",
1,
USERS_ID,
0,
akum_valobj,
1,
USERS_ID,
- "kerberos.users_id = %d or kerberos.string_id = %d",
+ "krbmap.users_id = %d or krbmap.string_id = %d",
2,
USERS_ID,
access_user,
akum_valobj,
2,
USERS_ID,
- "kerberos.users_id = %d and kerberos.string_id = %d",
+ "krbmap.users_id = %d and krbmap.string_id = %d",
2,
USERS_ID,
access_user,
static char *gfbl_fields[] = {
LOGIN,
LOGIN, "fullname", "nickname", "home_addr",
- "home_phone", "office_address", "office_phone", "department",
+ "home_phone", "office_addr", "office_phone", "department",
"affiliation", MOD1, MOD2, MOD3,
};
static char *ufbl_fields[] = {
LOGIN,
"fullname", "nickname", "home_addr",
- "home_phone", "office_address", "office_phone", "department",
+ "home_phone", "office_addr", "office_phone", "department",
"affiliation",
};
VOuser0,
1,
"potype",
- "users.potype != \"NONE\" and users.users_id=%d",
+ "users.potype != 'NONE' and users.users_id=%d",
1,
0,
access_user,
amac_valobj,
3,
NAME,
- "imembers.name = uppercase(\"%s\")",
+ "machine.name = UPPERCASE(LEFT('%s',SIZE(machine.name)))",
1,
MACH_ID,
0,
- 0,
+ prefetch_value,
set_uppercase_modtime,
};
{V_CHAR, 0}
};
-static struct validate aclu_validate = /* for aclu */
+static struct validate aclu_validate =
{
aclu_valobj,
2,
NAME,
- "clusters.name = \"%s\"",
+ "cluster.name = LEFT('%s',SIZE(cluster.name))",
1,
- "clu_id",
- 0,
+ CLU_ID,
0,
+ prefetch_value,
set_modtime,
};
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,
- "imembers.mach_id = %d and imembers.clu_id = %d",
+ "mcmap.mach_id = %d and mcmap.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,
+ "svc.clu_id = %d AND svc.serv_label = '%s' AND svc.serv_cluster = LEFT('%s',SIZE(svc.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\"",
+ "svc.clu_id = %d AND svc.serv_label = '%s' AND svc.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,
+ gsin_valobj,
+ 1,
0,
0,
0,
asin_valobj,
5,
NAME,
- "services.name = uppercase(\"%s\")",
+ "servers.name = UPPERCASE(LEFT('%s',SIZE(servers.name)))",
1,
0,
0,
asin_valobj,
1,
NAME,
- "services.name = uppercase(\"%s\")",
+ "services.name = uppercase('%s')",
1,
0,
access_service,
asin_valobj,
1,
NAME,
- "services.name = uppercase(\"%s\")",
+ "services.name = uppercase('%s')",
1,
0,
0,
asin_valobj,
1,
NAME,
- "services.name = uppercase(\"%s\")",
+ "services.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,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase(\"%s\") and serverhosts.mach_id = %d",
+ "serverhosts.service = UPPERCASE(LEFT('%s',SIZE(serverhosts.service))) and serverhosts.mach_id = %d",
2,
0,
access_service,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase(\"%s\") and serverhosts.mach_id = %d",
+ "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
2,
0,
access_service,
ashi_valobj,
3,
SERVICE,
- "serverhosts.service = uppercase(\"%s\") and serverhosts.mach_id = %d",
+ "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
2,
0,
access_service,
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",
+ "serverhosts.service = uppercase('%s') and serverhosts.mach_id = %d",
2,
0,
access_service,
static struct validate gsha_validate =
{
- 0,
- 0,
+ VOupwild0,
+ 1,
0,
0,
0,
"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 *gfsg_fields[] = {
LIST,
LABEL, TYPE, MACHINE, NAME, "mount", "access", "comments", "owner", "owners",
afil_valobj,
8,
LABEL,
- "filesys.label = \"%s\"",
+ "filesys.label = LEFT('%s',SIZE(filesys.label))",
1,
FILSYS_ID,
0,
2,
0,
0,
- 0,
+ setup_aftg,
0,
};
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\"",
+ "nfsphys.mach_id = %d and nfsphys.dir = LEFT('%s',SIZE(nfsphys.dir))",
+ 2,
+ "nfsphys_id",
+ 0,
+ prefetch_value,
+ set_nfsphys_modtime,
+};
+
+static struct validate unfp_validate = {
+ anfp_valobj,
+ 2,
+ DIR,
+ "nfsphys.mach_id = %d and nfsphys.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\"",
+ "nfsphys.mach_id = %d and nfsphys.dir = '%s'",
2,
"nfsphys_id",
0,
aqot_valobj,
4,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = \"%s\" and quota.entity_id = %d",
+ "quota.filsys_id = %d and quota.type = '%s' and quota.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",
+ "quota.filsys_id = %d and quota.type = '%s' and quota.entity_id = %d",
3,
0,
0,
aqot_valobj,
4,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = \"%s\" and quota.entity_id = %d",
+ "quota.filsys_id = %d and quota.type = '%s' and quota.entity_id = %d",
3,
0,
0,
};
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",
+ "quota.filsys_id = %d and quota.type = 'USER' and quota.entity_id = %d",
2,
0,
0,
- 0,
+ prefetch_filesys,
followup_aqot,
};
VOfilsys0user1,
3,
FILSYS_ID,
- "quota.filsys_id = %d and quota.type = \"USER\" and quota.entity_id = %d",
+ "quota.filsys_id = %d and quota.type = 'USER' and quota.entity_id = %d",
2,
0,
0,
static char *glin_fields[] = {
NAME,
- NAME, "active", "public", "hidden", "maillist", "grouplist", "gid",
+ NAME, "active", "publicflg", "hidden", "maillist", "grouplist", "gid",
ACE_TYPE, ACE_NAME, DESC, MOD1, MOD2, MOD3,
};
};
static char *alis_fields[] = {
- NAME, "active", "public", "hidden", "maillist", "grouplist", "gid",
+ NAME, "active", "publicflg", "hidden", "maillist", "grouplist", "gid",
ACE_TYPE, ACE_NAME, DESC,
};
alis_valobj,
4,
NAME,
- "list.name = \"%s\"",
+ "list.name = LEFT('%s',SIZE(list.name))",
1,
LIST_ID,
0,
static char *ulis_fields[] = {
NAME,
- "newname", "active", "public", "hidden", "maillist", "grouplist", "gid",
+ "newname", "active", "publicflg", "hidden", "maillist", "grouplist", "gid",
ACE_TYPE, ACE_NAME, DESC,
};
};
static char *qgli_fields[] = {
- "active", "public", "hidden", "maillist", "grouplist",
+ "active", "publicflg", "hidden", "maillist", "grouplist",
"list",
};
static char *glom_fields[] = {
"member_type", "member_name",
- "list_name", "active", "public", "hidden", "maillist", "grouplist",
+ "list_name", "active", "publicflg", "hidden", "maillist", "grouplist",
};
static struct valobj glom_valobj[] = {
};
static struct validate gzcl_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
azcl_valobj,
9,
CLASS,
- "zephyr.class = \"%s\"",
+ "zephyr.class = LEFT('%s',SIZE(zephyr.class))",
1,
0,
0,
uzcl_valobj,
9,
CLASS,
- "zephyr.class = \"%s\"",
+ "zephyr.class = '%s'",
1,
0,
0,
0,
0,
CLASS,
- "zephyr.class = \"%s\"",
+ "zephyr.class = '%s'",
1,
0,
0,
VOchar0,
1,
NAME,
- "services.name = \"%s\"",
+ "services.name = LEFT('%s',SIZE(services.name))",
1,
0,
0,
};
static struct validate gpce_validate = {
- VOsort0,
- 1,
+ VOwild0sort,
+ 2,
0,
0,
0,
apce_valobj,
3,
NAME,
- "printcap.name = \"%s\"",
+ "printcap.name = LEFT('%s',SIZE(printcap.name))",
1,
0,
0,
0,
0,
NAME,
- "printcap.name = \"%s\"",
+ "printcap.name = '%s'",
1,
0,
0,
apdm_valobj,
2,
NAME,
- "palladium.name = \"%s\"",
+ "palladium.name = LEFT('%s',SIZE(palladium.name))",
1,
0,
0,
0,
0,
NAME,
- "palladium.name = \"%s\"",
+ "palladium.name = '%s'",
1,
0,
0,
aali_valobj,
3,
"trans",
- "alias.name = \"%s\" and alias.type = \"%s\" and alias.trans = \"%s\"",
+ "alias.name = LEFT('%s',SIZE(alias.name)) and alias.type = '%s' and alias.trans = LEFT('%s',SIZE(alias.trans))",
3,
0,
0,
0,
0,
"trans",
- "alias.name = \"%s\" and alias.type = \"%s\" and alias.trans = \"%s\"",
+ "alias.name = '%s' and alias.type = '%s' and alias.trans = '%s'",
3,
0,
0,
VOchar0,
1,
NAME,
- "numvalues.name = \"%s\"",
+ "numvalues.name = LEFT('%s',SIZE(numvalues.name))", /* LEFT() only needed for aval */
1,
0,
0,
};
static char *gats_fields[] = {
- "table_name", "retrieves", "appends", "updates", "deletes", MOD1, MOD2, MOD3,
+ "table_name", "appends", "updates", "deletes", MOD1, MOD2, MOD3,
};
\f
/* Generalized Query Definitions */
+/* 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 Queries2[] = {
{
/* Q_GALO - GET_ALL_LOGINS */
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle FROM users",
galo_fields,
6,
"users_id != 0",
0,
- 0,
+ &VDsort0,
},
{
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle FROM users",
galo_fields,
6,
"status = 1",
0,
- 0,
+ &VDsort0,
},
{
"gubl",
RETRIEVE,
"u",
- USERS,
- "login, text(uid), shell, last, first, middle, text(status), mit_id, mit_year, modtime, text(modby), modwith FROM users",
+ USERS,
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), type, CHAR(modtime), CHAR(modby), modwith FROM users",
gubl_fields,
12,
- "login = '%s' AND users_id != 0",
+ "login LIKE '%s' ESCAPE '*' AND users_id != 0",
1,
- &gubx_validate,
+ &gubl_validate,
},
{
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle, text(status), mit_id, mit_year, modtime, text(modby), modwith FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), type, CHAR(modtime), CHAR(modby), modwith FROM users",
gubu_fields,
12,
"uid = %s AND users_id != 0",
1,
- &gubx_validate,
+ &gubu_validate,
},
{
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle, text(status), mit_id, mit_year, modtime, text(modby), modwith FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), type, CHAR(modtime), CHAR(modby), modwith FROM users",
gubn_fields,
12,
- "first = '%s' AND last = '%s' AND users_id != 0",
+ "first LIKE '%s' ESCAPE '*' AND last LIKE '%s' ESCAPE '*' AND users_id != 0",
2,
- &VDsortf,
+ &gubn_validate,
},
{
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle, text(status), mit_id, mit_year, modtime, text(modby), modwith FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), type, CHAR(modtime), CHAR(modby), modwith FROM users",
gubc_fields,
12,
- "mit_year = uppercase('%s') AND u.users_id != 0",
+ "type = uppercase('%s') AND users_id != 0",
1,
&VDsortf,
},
RETRIEVE,
"u",
USERS,
- "login, text(uid), shell, last, first, middle, text(status), mit_id, mit_year, modtime, text(modby), modwith FROM users",
+ "CHAR(login), CHAR(uid), shell, CHAR(last), CHAR(first), middle, CHAR(status), CHAR(clearid), type, CHAR(modtime), CHAR(modby), modwith FROM users",
gubm_fields,
12,
- "mit_id = '%s' AND users_id != 0",
+ "clearid LIKE '%s' ESCAPE '*' AND users_id != 0",
1,
- &VDsortf,
+ &VDwildsortf,
},
+
{
- /* Q_AUSR - ADD_USER */ /** Needs subselect */
+ /* Q_AUSR - ADD_USER */ /* uses prefetch_value() for users_id */
"add_user",
"ausr",
APPEND,
"u",
USERS,
- "INTO users (login, users_id, uid, shell, last, first, middle, status, mit_id, mit_year) VALUES ( '%s', numvalues.value, %s, '%s', '%s', '%s', '%s', %s, '%s', '%s')",
+ "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,
9,
- "numvalues.name = 'users_id'",
+ 0,
0,
&ausr_validate,
},
UPDATE,
"u",
USERS,
- "users SET login = '%s', uid = %s, shell = '%s', last = '%s', first = '%s', middle = '%s', status = %s, mit_id = '%s', mit_year = '%s'",
+ "users SET login = '%s', uid = %s, shell = '%s', last = '%s', first = '%s', middle = '%s', status = %s, clearid = '%s', type = '%s'",
uusr_fields,
9,
"users_id = %d",
(char *)0,
dubu_fields,
0,
- "u.users_id = %d",
+ "users_id = %d",
1,
&dubu_validate,
},
{
- /* Q_GKUM - GET_KERBEROS_USER_MAP */ /*! Benefits from FROM clause */
+ /* Q_GKUM - GET_KERBEROS_USER_MAP */
"get_kerberos_user_map",
"gkum",
RETRIEVE,
"k",
"krbmap",
- "u.login, s.string FROM krbmap k, users u, strings s",
+ "CHAR(u.login), CHAR(s.string) FROM krbmap k, users u, strings s",
gkum_fields,
2,
- "u.login = '%s' AND s.string = '%s' AND k.users_id = u.users_id AND k.string_id = s.string_id",
+ "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",
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,
- "login, fullname, nickname, home_addr, home_phone, office_addr, office_phone, department, affiliation, fmodtime, text(fmodby), fmodwith FROM users",
+ "CHAR(login), fullname, nickname, home_addr, home_phone, office_addr, office_phone, department, affiliation, CHAR(fmodtime), CHAR(fmodby), fmodwith FROM users",
gfbl_fields,
12,
"users_id = %d",
RETRIEVE,
"u",
USERS,
- "login, potype, text(pop_id) + \":\" + text(box_id), pmodtime, text(pmodby), pmodwith FROM users",
+ "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id), CHAR(pmodtime), CHAR(pmodby), pmodwith FROM users",
gpob_fields,
6,
"users_id = %d",
RETRIEVE,
"u",
USERS,
- "login, potype, text(pop_id) + \":\" + text(box_id) FROM users",
+ "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
gpox_fields,
3,
"potype != 'NONE'",
RETRIEVE,
"u",
USERS,
- "login, potype, text(pop_id) + \":\" + text(box_id) FROM users",
+ "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
gpox_fields,
3,
"potype = 'POP'",
RETRIEVE,
"u",
USERS,
- "login, potype, text(pop_id) + \":\" + text(box_id) FROM users",
+ "CHAR(login), potype, CHAR(pop_id) + ':' + CHAR(box_id) FROM users",
gpox_fields,
3,
"potype = 'SMTP'",
RETRIEVE,
"m",
MACHINE,
- "name, type, modtime, text(modby), modwith FROM machine",
+ "CHAR(name), type, CHAR(modtime), CHAR(modby), modwith FROM machine",
gmac_fields,
5,
- "name = uppercase('%s') AND mach_id != 0",
+ "name LIKE '%s' ESCAPE '*' AND mach_id != 0",
1,
- &VDsortf,
+ &VDupwildsortf,
},
{
- /* Q_AMAC - ADD_MACHINE */ /** Needs subselect */
+ /* Q_AMAC - ADD_MACHINE */ /* uses prefetch_value() for mach_id */
"add_machine",
"amac",
APPEND,
"m",
MACHINE,
- "INTO machine (name, mach_id, type) VALUES (uppercase('%s'),numvalues.value,'%s')",
+ "INTO machine (name, type, mach_id) VALUES (uppercase('%s'),'%s',%s)",
amac_fields,
2,
- "numvalues.name = 'mach_id'",
+ 0,
0,
&amac_validate,
},
RETRIEVE,
"c",
CLUSTER,
- "name, desc, location, modtime, text(modby), modwith FROM cluster",
+ "CHAR(name), description, location, CHAR(modtime), CHAR(modby), modwith FROM cluster",
gclu_fields,
6,
- "name = '%s' AND clu_id != 0",
+ "name LIKE '%s' ESCAPE '*' AND clu_id != 0",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
- /* Q_ACLU - ADD_CLUSTER */ /** Needs subselect */
+ /* Q_ACLU - ADD_CLUSTER */ /* uses prefetch_value() for clu_id */
"add_cluster",
"aclu",
APPEND,
"c",
CLUSTER,
- "INTO cluster (name, clu_id, desc, location) VALUES ('%s',numvalues.value,'%s','%s')",
+ "INTO cluster (name, description, location, clu_id) VALUES ('%s','%s','%s',%s)",
aclu_fields,
3,
- "numvalues.name = 'clu_id'",
+ 0,
0,
&aclu_validate,
},
UPDATE,
"c",
CLUSTER,
- "cluster SET name = '%s', desc = '%s', location = '%s'",
+ "cluster SET name = '%s', description = '%s', location = '%s'",
uclu_fields,
3,
"clu_id = %d",
},
{
- /* Q_GMCM - GET_MACHINE_TO_CLUSTER_MAP */ /*! Benefits from FROM clause */
+ /* Q_GMCM - GET_MACHINE_TO_CLUSTER_MAP */
"get_machine_to_cluster_map",
"gmcm",
RETRIEVE,
"map",
"mcmap",
- "m.name, c.name FROM machine m, cluster c, mcmap map",
+ "CHAR(m.name), CHAR(c.name) FROM machine m, cluster c, mcmap map",
gmcm_fields,
2,
- "m.name = uppercase('%s') AND c.name = '%s' 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 map.clu_id = c.clu_id AND map.mach_id = m.mach_id",
2,
- &VDsort2,
+ &gmcm_validate,
},
{
},
{
- /* Q_GCLD - GET_CLUSTER_DATA */ /*! Benefits from FROM clause */
+ /* Q_GCLD - GET_CLUSTER_DATA */
"get_cluster_data",
"gcld",
RETRIEVE,
"s",
"svc",
- "c.name, s.serv_label, s.serv_cluster FROM svc s, cluster c",
+ "CHAR(c.name), CHAR(s.serv_label), s.serv_cluster FROM svc s, cluster c",
gcld_fields,
3,
- "c.clu_id = s.clu_id AND c.name = '%s' AND s.serv_label = '%s'",
+ "c.clu_id = s.clu_id AND c.name LIKE '%s' ESCAPE '*' AND s.serv_label LIKE '%s' ESCAPE '*'",
2,
- &VDsort2,
+ &VDwild2sort2,
},
{
(char *)0,
acld_fields,
0,
- "clu_id = %d AND serv_label = '%s' AND serv_cluster = '%s'",
+ "clu_id = %d AND serv_label = '%s' AND serv_cluster = '%s'",
3,
- &acld_validate,
+ &dcld_validate,
},
{
RETRIEVE,
"s",
"servers",
- "name, text(update_int), target_file, script, text(dfgen), text(dfcheck), type, text(enable), text(inprogress), text(harderror), errmsg, acl_type, text(acl_id), modtime, text(modby), modwith FROM 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",
gsin_fields,
16,
- "name = uppercase('%s')",
+ "name LIKE '%s' ESCAPE '*'",
1,
&gsin_validate,
},
},
{
- /* Q_GSHI - GET_SERVER_HOST_INFO */ /*! Benefits from FROM clause */
+ /* Q_GSHI - GET_SERVER_HOST_INFO */
"get_server_host_info",
"gshi",
RETRIEVE,
"sh",
"serverhosts",
- "sh.service, m.name, text(sh.enable), text(sh.override), text(sh.success), text(sh.inprogress), text(sh.hosterror), sh.hosterrmsg, text(sh.ltt), text(sh.lts), text(sh.value1), text(sh.value2), sh.value3, sh.modtime, text(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_SSHI - SET_SERVER_HOST_INTERNAL */ /**! Would benefit from extra corr. names -- How to do it? */
+ /* Q_SSHI - SET_SERVER_HOST_INTERNAL */
"set_server_host_internal",
"sshi",
UPDATE,
"serverhosts SET override = %s, success = %s, inprogress = %s, hosterror = %s, hosterrmsg = '%s', ltt = %s, lts = %s",
sshi_fields,
7,
- "s.service = uppercase('%s') AND s.mach_id = machine.mach_id AND machine.name = '%s'",
+ "service = uppercase('%s') AND mach_id = %d",
2,
&sshi_validate,
},
},
{
- /* Q_GSHA - GET_SERVER_HOST_ACCESS */ /*! Benefits from FROM clause */
+ /* Q_GSHA - GET_SERVER_HOST_ACCESS */
"get_server_host_access",
"gsha",
RETRIEVE,
"ha",
"hostaccess",
- "m.name, ha.acl_type, text(ha.acl_id), ha.modtime, text(ha.modby), ha.modwith FROM hostaccess ha, machine m",
+ "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,
},
},
{
- /* Q_GSLO - GET_SERVER_LOCATIONS */ /*! Benefits from FROM clause */
+ /* Q_GSLO - GET_SERVER_LOCATIONS */
"get_server_locations",
"gslo",
RETRIEVE,
"sh",
"serverhosts",
- "sh.service, m.name FROM serverhosts sh, machine m",
+ "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,
},
{
- /* Q_GFSL - GET_FILESYS_BY_LABEL */ /*! Benefits from FROM clause */
+ /* Q_GFSL - GET_FILESYS_BY_LABEL */
"get_filesys_by_label",
"gfsl",
RETRIEVE,
"fs",
FILESYS,
- "fs.label, fs.type, m.name, fs.name, fs.mount, fs.access, fs.comments, u.login, l.name, text(fs.createflg), fs.lockertype, fs.modtime, text(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "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",
gfsl_fields,
14,
- "fs.label = '%s' AND fs.mach_id = m.mach_id AND fs.owner = u.users_id AND fs.owners = l.list_id",
+ "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,
},
{
- /* Q_GFSM - GET_FILESYS_BY_MACHINE */ /*! Benefits from FROM clause */
+ /* Q_GFSM - GET_FILESYS_BY_MACHINE */
"get_filesys_by_machine",
"gfsm",
RETRIEVE,
"fs",
FILESYS,
- "fs.label, fs.type, m.name, fs.name, fs.mount, fs.access, fs.comments, u.login, l.name, text(fs.createflg), fs.lockertype, fs.modtime, text(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "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",
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 */ /*! Benefits from FROM clause */
+ /* Q_GFSN - GET_FILESYS_BY_NFSPHYS */
"get_filesys_by_nfsphys",
"gfsn",
RETRIEVE,
"fs",
FILESYS,
- "fs.label, fs.type, m.name, fs.name, fs.mount, fs.access, fs.comments, u.login, l.name, text(fs.createflg), fs.lockertype, fs.modtime, text(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l, nfsphys np",
+ "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",
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,
},
{
- /* Q_GFSG - GET_FILESYS_BY_GROUP */ /*! Benefits from FROM clause */
+ /* Q_GFSG - GET_FILESYS_BY_GROUP */
"get_filesys_by_group",
"gfsg",
RETRIEVE,
"fs",
FILESYS,
- "fs.label, fs.type, m.name, fs.name, fs.mount, fs.access, fs.comments, u.login, l.name, text(fs.createflg), fs.lockertype, fs.modtime, text(fs.modby), fs.modwith FROM filesys fs, machine m, users u, list l",
+ "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",
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",
},
{
- /* Q_AFIL - ADD_FILESYS */ /** Need subselect */
+ /* Q_AFIL - ADD_FILESYS */ /* uses prefetch_value() for filsys_id */
"add_filesys",
"afil",
APPEND,
"fs",
FILESYS,
- "INTO filesys (filsys_id, label, type, mach_id, name, mount, access, comments, owner, owners, createflg, lockertype) VALUES (numvalues.value,'%s','%s',%d,'%s','%s','%s','%s',%d,%d,%s,'%s')",
+ "INTO filesys (label, type, mach_id, name, mount, access, comments, owner, owners, createflg, lockertype, filsys_id) VALUES ('%s','%s',%d,'%s','%s','%s','%s',%d,%d,%s,'%s',%s)",
afil_fields,
11,
- "numvalues.name = 'filsys_id'",
+ 0,
0,
&afil_validate,
},
},
{
- /* Q_GFGM - GET_FSGROUOP_MEMBERS */ /*! */
+ /* Q_GFGM - GET_FSGROUP_MEMBERS */
"get_fsgroup_members",
"gfgm",
RETRIEVE,
"fg",
"fsgroup",
- "fs.label, fg.key FROM fsgroup fg, filesys fs",
+ "CHAR(fs.label), fg.key FROM fsgroup fg, filesys fs",
gfgm_fields,
2,
"fg.group_id = %d AND fs.filsys_id = fg.filsys_id",
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'",
+ (char *)0,
1,
&aftg_validate,
},
},
{
- /* Q_GANF - GET_ALL_NFSPHYS */ /*! */
+ /* Q_GANF - GET_ALL_NFSPHYS */
"get_all_nfsphys",
"ganf",
RETRIEVE,
"np",
"nfsphys",
- "m.name, np.dir, np.device, text(np.status), text(np.allocated), text(np.size), np.modtime, text(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",
},
{
- /* Q_GNFP - GET_NFSPHYS */ /*! */
+ /* Q_GNFP - GET_NFSPHYS */
"get_nfsphys",
"gnfp",
RETRIEVE,
"np",
"nfsphys",
- "m.name, np.dir, np.device, text(np.status), text(np.allocated), text(np.size), np.modtime, text(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,
},
{
- /* Q_ANFP - ADD_NFSPHYS */ /** Needs subselect */
+ /* Q_ANFP - ADD_NFSPHYS */ /* uses prefetch_value() for nfsphys_id */
"add_nfsphys",
"anfp",
APPEND,
"np",
"nfsphys",
- "INTO nfsphys (nfsphys_id, mach_id, dir, device, status, allocated, size) VALUES (numvalues.value, %d, '%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,
- "numvalues.name = 'nfsphys_id'",
+ 0,
0,
&anfp_validate,
},
UPDATE,
"np",
"nfsphys",
- "nfsphys SET device = '%s', status = '%s', allocated = %s, size = %s",
+ "nfsphys SET device = '%s', status = '%s', allocated = %s, partsize = %s",
gnfp_fields,
4,
- "mach_id = %d AND dir = '%s'",
+ "mach_id = %d AND dir = '%s'",
2,
- &anfp_validate,
+ &unfp_validate,
},
{
"np",
"nfsphys",
"nfsphys SET allocated = allocated + %s",
- dnfp_fields,
+ ajnf_fields,
1,
"mach_id = %d AND dir = '%s'",
2,
- &anfp_validate,
+ &unfp_validate,
},
{
},
{
- /* Q_GQOT - GET_QUOTA */ /*! */
+ /* Q_GQOT - GET_QUOTA */
"get_quota",
"gqot",
RETRIEVE,
"q",
QUOTA,
- "fs.label, q.type, text(q.entity_id), text(q.quota), text(q.phys_id), m.name, q.modtime, text(q.modby), q.modwith FROM quota q, filesys fs, machine m",
+ "CHAR(fs.label), q.type, CHAR(q.entity_id), CHAR(q.quota), CHAR(q.phys_id), CHAR(m.name), CHAR(q.modtime), CHAR(q.modby), q.modwith FROM quota q, filesys fs, machine m",
gqot_fields,
9,
- "fs.label = '%s' AND q.type = '%s' AND q.entity_id = %d AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id",
+ "fs.label LIKE '%s' ESCAPE '*' AND q.type = '%s' AND q.entity_id = %d AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id",
3,
&gqot_validate,
},
{
- /* Q_GQBF - GET_QUOTA_BY_FILESYS */ /*! */
+ /* Q_GQBF - GET_QUOTA_BY_FILESYS */
"get_quota_by_filesys",
"gqbf",
RETRIEVE,
"q",
QUOTA,
- "fs.label, q.type, text(q.entity_id), text(q.quota), text(q.phys_id), m.name, q.modtime, text(q.modby), q.modwith FROM quota q, filesys fs, machine m",
+ "CHAR(fs.label), q.type, CHAR(q.entity_id), CHAR(q.quota), CHAR(q.phys_id), CHAR(m.name), CHAR(q.modtime), CHAR(q.modby), q.modwith FROM quota q, filesys fs, machine m",
gqbf_fields,
9,
- "fs.label = '%s' AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id",
+ "fs.label LIKE '%s' ESCAPE '*' AND fs.filsys_id = q.filsys_id AND m.mach_id = fs.mach_id",
1,
&gqbf_validate,
},
{
- /* Q_AQOT - ADD_QUOTA */ /** Needs subselect */
+ /* Q_AQOT - ADD_QUOTA */ /* prefetch_filsys() gets last 2 values */
"add_quota",
"aqot",
APPEND,
"q",
QUOTA,
- "INTO quota (filsys_id, type, entity_id, quota, phys_id) VALUES (filesys.filsys_id, '%s', %d, %s, filesys.phys_id)",
+ "INTO quota (type, entity_id, quota, filsys_id, phys_id) VALUES (filesys.filsys_id, '%s', %d, %s, %s, %s)",
aqot_fields,
3,
- "filesys.filsys_id = %d",
+ (char *)0,
1,
&aqot_validate,
},
},
{
- /* Q_GNFQ - GET_NFS_QUOTAS */ /*! */
+ /* Q_GNFQ - GET_NFS_QUOTAS */
"get_nfs_quota",
"gnfq",
RETRIEVE,
"q",
QUOTA,
- "fs.label, u.login, text(q.quota), text(q.phys_id), m.name, q.modtime, text(q.modby), q.modwith FROM quota q, filesys fs, users u, machine m",
+ "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,
},
{
- /* Q_GNQP - GET_NFS_QUOTAS_BY_PARTITION */ /*! */
+ /* Q_GNQP - GET_NFS_QUOTAS_BY_PARTITION */
"get_nfs_quotas_by_partition",
"gnqp",
RETRIEVE,
"q",
QUOTA,
- "fs.label, u.login, text(q.quota), np.dir, 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 2 values */
"add_nfs_quota",
"anfq",
APPEND,
"q",
QUOTA,
- "INTO quota (filsys_id, type, entity_id, quota, phys_id) VALUES (filesys.filsys_id, 'USER', %d, %s, filesys.phys_id)",
+ "INTO quota (type, entity_id, quota, filsys_id, phys_id) VALUES ('USER', %d, %s, %s, %s)",
anfq_fields,
2,
- "filesys.filsys_id = %d",
+ (char *)0,
1,
&anfq_validate,
},
glin_fields,
13,
0,
- 1,
- &glin_validate,
+ 1,
+ &glin_validate,
},
{
RETRIEVE,
"l",
LIST,
- "l.name FROM list l",
+ "CHAR(name) FROM list",
glin_fields,
1,
- "l.name = '%s' AND l.list_id != 0",
+ "name LIKE '%s' ESCAPE '*' AND list_id != 0",
1,
- 0
+ &VDwild0,
},
{
- /* Q_ALIS - ADD_LIST */ /** Needs numvalues subselect */
+ /* Q_ALIS - ADD_LIST */ /* uses prefetch_value() for list_id */
"add_list",
"alis",
APPEND,
"l",
LIST,
- "INTO list (list_id, name, active, public, hidden, maillist, grouplist, gid, acl_type, acl_id, desc) VALUES (numvalues.value,'%s',%s,%s,%s,%s,%s,%s,'%s',%d,'%s')",
+ "INTO list (name, active, publicflg, hidden, maillist, grouplist, gid, acl_type, acl_id, description, list_id) VALUES ('%s',%s,%s,%s,%s,%s,%s,'%s',%d,'%s',%s)",
alis_fields,
10,
- "numvalues.name = 'list_id'",
+ 0,
0,
&alis_validate,
},
UPDATE,
"l",
LIST,
- "list SET name='%s', active=%s, public=%s, hidden=%s, maillist=%s, grouplist=%s, gid=%s, acl_type='%s', acl_id=%d, desc='%s'",
+ "list SET name='%s', active=%s, publicflg=%s, hidden=%s, maillist=%s, grouplist=%s, gid=%s, acl_type='%s', acl_id=%d, description='%s'",
ulis_fields,
10,
- "list.list_id = %d",
+ "list_id = %d",
1,
&ulis_validate,
},
"imembers",
(char *)0,
gmol_fields,
- 0,
+ 2,
(char *)0,
1,
&gmol_validate,
RETRIEVE,
"z",
"zephyr",
- "class, xmt_type, text(xmt_id),sub_type, text(sub_id),iws_type, text(iws_id),iui_type, text(iui_id), modtime, text(modby), modwith FROM 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",
gzcl_fields,
12,
- "class = '%s'",
+ "class LIKE '%s' ESCAPE '*'",
1,
&gzcl_validate,
},
RETRIEVE,
"s",
"services",
- "name, protocol, text(port), desc, modtime, text(modby), modwith FROM services",
+ "CHAR(name), protocol, CHAR(port), description, CHAR(modtime), CHAR(modby), modwith FROM services",
gsvc_fields,
7,
- "name = '%s'",
+ "name LIKE '%s' ESCAPE '*'",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
APPEND,
"s",
"services",
- "INTO services (name, protocol, port, desc) VALUES ('%s','%s',%s,'%s')",
+ "INTO services (name, protocol, port, description) VALUES ('%s','%s',%s,'%s')",
asvc_fields,
4,
(char *)0,
},
{
- /* Q_GPCE - GET_PRINTCAP_ENTRY */ /*! */
+ /* Q_GPCE - GET_PRINTCAP_ENTRY */
"get_printcap_entry",
"gpce",
RETRIEVE,
"p",
"printcap",
- "p.name, m.name, p.dir, p.rp, text(p.quotaserver), text(p.auth), text(p.price), p.comments, p.modtime, text(p.modby), p.modwith FROM printcap p, machine m",
+ "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",
gpce_fields,
11,
- "p.name = '%s' AND m.mach_id = p.mach_id",
+ "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
1,
&gpce_validate,
},
RETRIEVE,
"p",
"printcap",
- "p.name, m.name, p.dir, p.rp, p.comments, p.modtime, text(p.modby), p.modwith FROM printcap p, machine m",
+ "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",
gpcp_fields,
8,
- "p.name = '%s' AND m.mach_id = p.mach_id",
+ "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
RETRIEVE,
"p",
"palladium",
- "p.name, text(p.ident), m.name, p.modtime, text(p.modby), p.modwith FROM palladium p, machine m",
+ "CHAR(p.name), CHAR(p.ident), CHAR(m.name), CHAR(p.modtime), CHAR(p.modby), p.modwith FROM palladium p, machine m",
gpdm_fields,
6,
- "p.name = '%s' AND m.mach_id = p.mach_id",
+ "p.name LIKE '%s' ESCAPE '*' AND m.mach_id = p.mach_id",
1,
- &VDsortf,
+ &VDwildsortf,
},
{
RETRIEVE,
"a",
"alias",
- "name, type, trans FROM alias",
+ "CHAR(name), CHAR(type), CHAR(trans) FROM alias",
gali_fields,
3,
- "name = '%s' AND type = '%s' AND trans = '%s'",
+ "name LIKE '%s' ESCAPE '*' AND type LIKE '%s' ESCAPE '*' AND trans LIKE '%s' ESCAPE '*'",
3,
- 0,
+ &VDwild3sort1,
},
{
(char *)0,
aali_fields,
0,
- "name = '%s' AND type = '%s' AND trans = '%s'",
+ "name = '%s' AND type = '%s' AND trans = '%s'",
3,
&dali_validate,
},
RETRIEVE,
"v",
"numvalues",
- "text(value) FROM numvalues",
+ "CHAR(value) FROM numvalues",
gval_fields,
1,
"name = '%s'",
RETRIEVE,
"tbs",
"tblstats",
- "tbs.table_name, text(tbs.retrieves), text(tbs.appends), text(tbs.updates), text(tbs.deletes), tbs.modtime FROM tblstats tbs",
+ "table_name, CHAR(appends), CHAR(updates), CHAR(deletes), CHAR(modtime) FROM tblstats",
gats_fields,
- 6,
+ 5,
(char *)0,
0,
0,