0,
};
-static char *gasv_fields[] = {
- SERVICE, "protocol", "port", DESC,
+static char *gsvc_fields[] = {
+ SERVICE,
+ SERVICE, "protocol", "port", DESC, MOD1, MOD2, MOD3
};
-static char *gpcp_fields[] = {
+static char *asvc_fields[] = {
+ SERVICE, "protocol", "port", DESC
+};
+
+static struct validate asvc_validate = {
+ VOchar0,
+ 1,
+ NAME,
+ "s.name = \"%s\"",
+ 1,
+ 0,
+ 0,
+ 0,
+ set_modtime,
+};
+
+static char *gpce_fields[] = {
"printer",
- "printer", "spooling_host", "spool_directory", "rprinter", "comments",
+ "printer", "spooling_host", "spool_directory", "rprinter",
+ "quotaserver", "authenticate", "price", "comments",
MOD1, MOD2, MOD3,
};
-static char *apcp_fields[] = {
- "printer", "spooling_host", "spool_directory", "rprinter", "comments",
+static char *apce_fields[] = {
+ "printer", "spooling_host", "spool_directory", "rprinter",
+ "quotaserver", "authenticate", "price", "comments",
MOD1, MOD2, MOD3,
};
-static struct valobj apcp_valobj[] = {
+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},
};
-static struct validate apcp_validate = {
- apcp_valobj,
- 2,
+static struct validate apce_validate = {
+ apce_valobj,
+ 3,
NAME,
"p.name = \"%s\"",
1,
set_modtime,
};
-static struct validate dpcp_validate = {
+static struct validate dpce_validate = {
0,
0,
NAME,
0,
};
+static char *gpcp_fields[] = {
+ "printer",
+ "printer", "spooling_host", "spool_directory", "rprinter", "comments",
+ MOD1, MOD2, MOD3,
+};
+
static char *gpdm_fields[] = {
NAME,
NAME, "rpcnum", "host", MOD1, MOD2, MOD3,
1,
&dzcl_validate,
},
-#ifdef notdef
+
{
/* Q_GSVC - GET_SERVICE */
"get_service",
"s",
"services",
"%c = s.name, %c = s.protocol, %c = text(s.port), %c = s.desc, %c = s.modtime, %c = text(s.modby), %c = s.modwith",
- gasv_fields,
+ gsvc_fields,
7,
- (char *)0,
- 0,
- &gsvc_validate,
+ "s.name = \"%s\"",
+ 1,
+ &VDsortf,
},
{
"s",
"services",
"name = %c, protocol = %c, port = int2(%c), desc = %c",
- gasv_fields,
+ asvc_fields,
4,
(char *)0,
0,
"s",
"services",
0,
- gasv_fields,
+ asvc_fields,
0,
"s.name = \"%s\"",
1,
- &dsvc_validate,
+ &asvc_validate,
},
-#endif
+
{
- /* Q_GPCP - GET_PRINTCAP */
- "get_printcap",
- "gpcp",
+ /* Q_GPCE - GET_PRINTCAP_ENTRY */
+ "get_printcap_entry",
+ "gpce",
RETRIEVE,
"p",
"printcap",
- "%c = p.name, %c = machine.name, %c = p.dir, %c = p.rp, %c = p.comments, %c = p.modtime, %c = text(p.modby), %c = p.modwith",
- gpcp_fields,
- 8,
- "p.name = \"%s\" and machine.mach_id = p.mach_id",
+ "%c = p.name, %c = machine.name, %c = p.dir, %c = p.rp, %c = m.name, %c = text(p.auth), %c = text(p.price), %c = p.comments, %c = p.modtime, %c = text(p.modby), %c = p.modwith",
+ gpce_fields,
+ 11,
+ "p.name = \"%s\" and machine.mach_id = p.mach_id and m.mach_id = p.quotaserver",
1,
&VDsortf,
},
{
- /* Q_APCP - ADD_PRINTCAP */
- "add_printcap",
- "apcp",
+ /* Q_APCE - ADD_PRINTCAP_ENTRY */
+ "add_printcap_entry",
+ "apce",
APPEND,
"p",
"printcap",
- "name = %c, mach_id = %i4, dir = %c, rp = %c, comments = %c",
- apcp_fields,
- 5,
+ "name = %c, mach_id = %i4, dir = %c, rp = %c, quotaserver = %i4, auth = int1(%c), price = int2(%c), comments = %c",
+ apce_fields,
+ 8,
0,
0,
- &apcp_validate,
+ &apce_validate,
+ },
+
+ {
+ /* Q_DPCE - DELETE_PRINTCAP_ENTRY */
+ "delete_printcap_entry",
+ "dpce",
+ DELETE,
+ "p",
+ "printcap",
+ 0,
+ apce_fields,
+ 0,
+ "p.name = \"%s\"",
+ 1,
+ &dpce_validate,
+ },
+
+ {
+ /* Q_GPCP - GET_PRINTCAP */
+ "get_printcap",
+ "gpcp",
+ RETRIEVE,
+ "p",
+ "printcap",
+ "%c = p.name, %c = machine.name, %c = p.dir, %c = p.rp, %c = p.comments, %c = p.modtime, %c = text(p.modby), %c = p.modwith",
+ gpcp_fields,
+ 8,
+ "p.name = \"%s\" and machine.mach_id = p.mach_id",
+ 1,
+ &VDsortf,
},
{
"p",
"printcap",
0,
- apcp_fields,
+ apce_fields,
0,
"p.name = \"%s\"",
1,
- &dpcp_validate,
+ &dpce_validate,
},
{