#define INGRES_BAD_DATE 4302
#define INGRES_DEADLOCK 4700
#define INGRES_TIMEOUT 4702
+#define INGRES_NO_RANGE 2109
/*
* ingerr: (supposedly) called when Ingres indicates an error.
mr_errcode = MR_BUSY;
com_err(whoami, 0, "timed out getting lock");
break;
+ case INGRES_NO_RANGE:
+ mr_errcode = MR_INGRES_SOFTFAIL;
+ com_err(whoami, 0, "INGRES missing range statement");
+ break;
default:
mr_errcode = MR_INGRES_ERR;
com_err(whoami, MR_INGRES_ERR, " code %d\n", *num);
* owns. Sets the kerberos ID and user ID.
*/
-set_krb_mapping(name, login, ok, kid, uid)
+int set_krb_mapping(name, login, ok, kid, uid)
char *name;
char *login;
int ok;
## repeat retrieve (u_id = krbmap.#users_id, k_id = krbmap.#string_id)
## where krbmap.string_id = strings.string_id and strings.string = @krbname
## inquire_equel (rowcount = "rowcount")
+ if (ingres_errno) return(mr_errcode);
if (rowcount == 1) {
*kid = -k_id;
*uid = u_id;
- return;
+ return(MR_SUCCESS);
}
if (name_to_id(name, "STRINGS", &k_id) == MR_SUCCESS)
if (!ok) {
*uid = *kid;
- return;
+ return(MR_SUCCESS);
}
if (name_to_id(login, "USERS", uid) != MR_SUCCESS)
if (*kid == 0)
*kid = *uid;
+ if (ingres_errno) return(mr_errcode);
+ return(MR_SUCCESS);
##}