From 23f25b04b95f08f5fc3aeaf9ea745326246dec9f Mon Sep 17 00:00:00 2001 From: Fritz Elfert Date: Mon, 18 Mar 2002 05:01:40 +0000 Subject: - made kpsion SIBO-aware - Added SIBO-related stuff in PsiTime - Added new class PsiProcess, renamed rpcs:queryDrive to queryPrograms and changed it accordingly - Adapted kspion, plpbackup, plpnfsd and plpftp to use queryPrograms - Several cleanups in rfsv16 --- lib/psitime.cc | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'lib/psitime.cc') diff --git a/lib/psitime.cc b/lib/psitime.cc index 298e494..213858d 100644 --- a/lib/psitime.cc +++ b/lib/psitime.cc @@ -3,7 +3,7 @@ * * This file is part of plptools. * - * Copyright (C) 2000-2001 Fritz Elfert + * Copyright (C) 2000-2002 Fritz Elfert * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -24,6 +24,8 @@ #include #include +#define OnePM 3600 // 13:00 offset for SIBO + PsiTime::PsiTime(void) { ptzValid = false; tryPsiZone(); @@ -210,6 +212,22 @@ evalOffset(psi_timezone ptz, time_t time, bool valid) { return offset; } +void PsiTime::setSiboTime(u_int32_t stime) { + unsigned long long micro = evalOffset(ptz, time(0), false); + + micro /= 1000000; + utv.tv_sec = stime + OnePM - micro; + utv.tv_usec = 0; +// unix2psi(); +} + +u_int32_t PsiTime::getSiboTime(void) { + unsigned long long micro = evalOffset(ptz, time(0), false); + + micro /= 1000000; + return utv.tv_sec - OnePM + micro; +} + void PsiTime::psi2unix(void) { u_int64_t micro = ptv.tv_high; micro = (micro << 32) | ptv.tv_low; -- cgit v1.2.3