/* Define to 1 if you have the `freeifaddrs' function. */
#undef HAVE_FREEIFADDRS
+/* Define to 1 if you have the `fseeko' function. */
+#undef HAVE_FSEEKO
+
/* Define to 1 if you have the `futime' function. */
#undef HAVE_FUTIME
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
break
+fi
+done
+
+ for ac_func in fseeko
+do :
+ ac_fn_c_check_func "$LINENO" "fseeko" "ac_cv_func_fseeko"
+if test "x$ac_cv_func_fseeko" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_FSEEKO 1
+_ACEOF
+
fi
done
AC_CHECK_FUNCS(getutxid getutid, [utmp_style=POSIX; break])
if test "$utmp_style" = "LEGACY"; then
AC_CHECK_FUNCS(getttyent ttyslot, [break])
+ AC_CHECK_FUNCS(fseeko)
fi
AC_CHECK_FUNCS(sysctl, [AC_CHECK_MEMBERS([struct kinfo_proc.ki_tdev], [],
}
}
utmp_fill(to_line, user, ut_old, &utbuf);
+#ifdef HAVE_FSEEKO
+ if (fseeko(fp, slot * (off_t)sizeof(utbuf), SEEK_SET) == 0) {
+#else
if (fseek(fp, slot * (long)sizeof(utbuf), SEEK_SET) == 0) {
+#endif
if (fwrite(&utbuf, sizeof(utbuf), 1, fp) == 1)
rval = true;
}
# endif
utmp_settime(&utbuf);
/* Back up and overwrite record. */
+#ifdef HAVE_FSEEKO
+ if (fseeko(fp, (off_t)0 - (off_t)sizeof(utbuf), SEEK_CUR) == 0) {
+#else
if (fseek(fp, 0L - (long)sizeof(utbuf), SEEK_CUR) == 0) {
+#endif
if (fwrite(&utbuf, sizeof(utbuf), 1, fp) == 1)
rval = true;
}