summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMark Eichin <eichin@mit.edu>1994-06-16 09:10:58 +0000
committerMark Eichin <eichin@mit.edu>1994-06-16 09:10:58 +0000
commit59a74d30f87b4fe34bf4baa50bcb72ad3c12f8bd (patch)
treefe81665ad2760d54daaf755922d424ec24e8153a /src
parent748e488029ca66226f1dca145f92f2745862191f (diff)
downloadkrb5-59a74d30f87b4fe34bf4baa50bcb72ad3c12f8bd.tar.gz
krb5-59a74d30f87b4fe34bf4baa50bcb72ad3c12f8bd.tar.xz
krb5-59a74d30f87b4fe34bf4baa50bcb72ad3c12f8bd.zip
use local static krb4_stime instead of unlikely stime
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@3856 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/kdc/configure.in1
-rw-r--r--src/kdc/kerberos_v4.c32
2 files changed, 32 insertions, 1 deletions
diff --git a/src/kdc/configure.in b/src/kdc/configure.in
index 1793b21e8..dd156cd34 100644
--- a/src/kdc/configure.in
+++ b/src/kdc/configure.in
@@ -1,4 +1,5 @@
AC_INIT(main.c)
+AC_STRUCT_TM
AC_HAVE_LIBRARY(socket)
AC_HAVE_LIBRARY(nsl)
ET_RULES
diff --git a/src/kdc/kerberos_v4.c b/src/kdc/kerberos_v4.c
index 7092db265..1155c2c45 100644
--- a/src/kdc/kerberos_v4.c
+++ b/src/kdc/kerberos_v4.c
@@ -1090,6 +1090,36 @@ static void check_db_age()
}
#endif /* BACKWARD_COMPAT */
+/*
+ * Given a pointer to a long containing the number of seconds
+ * since the beginning of time (midnight 1 Jan 1970 GMT), return
+ * a string containing the local time in the form:
+ *
+ * "25-Jan-88 10:17:56"
+ */
+
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#else
+#include <time.h>
+#endif
+
+static char *krb4_stime(t)
+ long *t;
+{
+ static char st[40];
+ static long adjusted_time;
+ struct tm *tm;
+ char *month_sname();
+
+ adjusted_time = *t /* - CONVERT_TIME_EPOCH */;
+ tm = localtime(&adjusted_time);
+ (void) sprintf(st,"%2d-%s-%02d %02d:%02d:%02d",tm->tm_mday,
+ month_sname(tm->tm_mon + 1),tm->tm_year,
+ tm->tm_hour, tm->tm_min, tm->tm_sec);
+ return st;
+}
+
int check_princ(p_name, instance, lifetime, p)
char *p_name;
char *instance;
@@ -1149,7 +1179,7 @@ int check_princ(p_name, instance, lifetime, p)
/* service did expire, log it */
lt = klog(L_ERR_SEXP,
"EXPIRED \"%s\" \"%s\" %s", (int) p->name, (int) p->instance,
- (int) stime(&(p->exp_date)), 0);
+ (int) krb4_stime(&(p->exp_date)), 0);
return KERB_ERR_NAME_EXP;
}
/* ok is zero */