]> andersk Git - moira.git/commitdiff
Initial revision
authorwesommer <wesommer>
Tue, 23 Jun 1987 16:13:00 +0000 (16:13 +0000)
committerwesommer <wesommer>
Tue, 23 Jun 1987 16:13:00 +0000 (16:13 +0000)
lib/mr_access.c [new file with mode: 0644]

diff --git a/lib/mr_access.c b/lib/mr_access.c
new file mode 100644 (file)
index 0000000..3c4602e
--- /dev/null
@@ -0,0 +1,74 @@
+/*
+ *     $Source$
+ *     $Author$
+ *     $Header$
+ *
+ *     Copyright (C) 1987 by the Massachusetts Institute of Technology
+ *
+ *     $Log$
+ *     Revision 1.1  1987-06-23 16:13:00  wesommer
+ *     Initial revision
+ *
+ */
+
+#ifndef lint
+static char *rcsid_sms_access_c = "$Header$";
+#endif lint
+
+#include "sms_private.h"
+
+/*
+ * Check access to a named query.
+ */
+int sms_access(name, argc, argv)
+    char *name;                        /* Query name */
+    int argc;                  /* Arg count */
+    char **argv;               /* Args */
+{
+    register char **nargv = (char **)malloc(sizeof(char *) * (argc+1));
+    register int status = 0;
+    nargv[0] = name;
+    bcopy((char *)argv, (char *)(nargv+1), sizeof(char *) * argc);
+    status = sms_access_internal(argc+1, nargv);
+    free(nargv);
+    return status;
+}
+/*
+ * Check access to a named query, where the query name is argv[0]
+ * and the arguments are the rest of argv[].
+ */
+int sms_access_internal(argc, argv)
+    int argc;                  /* Arg count */
+    char **argv;               /* Args */
+{
+    int status;
+    sms_params params_st;
+    register sms_params *params = NULL;
+    sms_params *reply = NULL;
+    
+    CHECK_CONNECTED;
+
+    params = &params_st;
+    params->sms_procno = SMS_ACCESS;
+    params->sms_argc = argc;
+    params->sms_argl = NULL;
+    params->sms_argv = argv;
+       
+    if ((status = sms_do_call(params, &reply)))
+       status = reply->sms_status;
+
+    sms_destroy_reply(reply);
+
+    return status;
+}
+
+/*
+ * Local Variables:
+ * mode: c
+ * c-indent-level: 4
+ * c-continued-statement-offset: 4
+ * c-brace-offset: -4
+ * c-argdecl-indent: 4
+ * c-label-offset: -4
+ * End:
+ */
This page took 0.039752 seconds and 5 git commands to generate.