// // return the gameservers time // plUnifiedTime plNetClientMgr::GetServerTime() const { if ( fServerTimeOffset==0 ) // offline mode or before connecting/calibrating to a server return plUnifiedTime::GetCurrent(); plUnifiedTime serverUT; if (fServerTimeOffset<0) return plUnifiedTime::GetCurrent() - plUnifiedTime(fabs(fServerTimeOffset)); else return plUnifiedTime::GetCurrent() + plUnifiedTime(fServerTimeOffset); }
bool plFileUtils::GetFileTimes( const char *path, plUnifiedTime *createTimeOut, plUnifiedTime *modifyTimeOut ) { struct stat fileInfo; int result = stat( path, &fileInfo ); if( result != 0 ) return false; if( createTimeOut != nil ) *createTimeOut = plUnifiedTime( fileInfo.st_ctime ); if( modifyTimeOut != nil ) *modifyTimeOut = plUnifiedTime( fileInfo.st_mtime ); return true; }
bool plStatusLog::IPrintLineToFile( const char *line, uint32_t count ) { if( fFlags & kDontWriteFile ) return true; #ifdef PLASMA_EXTERNAL_RELEASE uint8_t hint = 0; if( fFlags & kAppendToLast ) { hint = (uint8_t)fSize; } #endif if (!fFileHandle) IReOpen(); bool ret = ( fFileHandle!=nil ); if( fFileHandle != nil ) { char work[256]; char buf[2000]; buf[0] = 0; //build line to encrypt if( count != 0 ) { if ( fFlags & kTimestamp ) { snprintf(work, arrsize(work), "(%s) ", plUnifiedTime(kNow).Format("%m/%d %H:%M:%S").c_str()); strncat(buf, work, arrsize(work)); } if ( fFlags & kTimestampGMT ) { snprintf(work, arrsize(work), "(%s) ", plUnifiedTime::GetCurrent().Format("%m/%d %H:%M:%S UTC").c_str()); strncat(buf, work, arrsize(work)); } if ( fFlags & kTimeInSeconds ) { snprintf(work, arrsize(work), "(%lu) ", (unsigned long)plUnifiedTime(kNow).GetSecs()); strncat(buf, work, arrsize(work)); } if ( fFlags & kTimeAsDouble ) { snprintf(work, arrsize(work), "(%f) ", plUnifiedTime(kNow).GetSecsDouble()); strncat(buf, work, arrsize(work)); } if (fFlags & kRawTimeStamp) { snprintf(work, arrsize(work), "[t=%10f] ", hsTimer::GetSeconds()); strncat(buf, work, arrsize(work)); } if (fFlags & kThreadID) { snprintf(work, arrsize(work), "[t=%lu] ", hsThread::GetMyThreadId()); strncat(buf, work, arrsize(work)); } size_t remaining = arrsize(buf) - strlen(buf) - 1; remaining -= 1; if (count <= remaining) { strncat(buf, line, count); } else { strncat(buf, line, remaining); } strncat(buf, "\n", 1); } unsigned length = strlen(buf); { int err; err = fwrite(buf,1,length,fFileHandle); ret = ( ferror( fFileHandle )==0 ); if ( ret ) { fSize += err; if (!(fFlags & kNonFlushedLog)) fflush(fFileHandle); } } if ( fSize>=kMaxFileSize ) { plStatusLogMgr::GetInstance().BounceLogs(); } } plString out_str = plString::FromUtf8(line, count) + "\n"; if (fFlags & kDebugOutput) { #if HS_BUILD_FOR_WIN32 #ifndef PLASMA_EXTERNAL_RELEASE OutputDebugString(out_str.c_str()); #endif #else fputs(out_str.c_str(), stderr); #endif } if (fFlags & kStdout) { fputs(out_str.c_str(), stdout); } return ret; }
plUnifiedTime plVaultNode::getCreateAgeTime() const { return fFields[kFieldCreateAgeTime] ? fCreateAgeTime : plUnifiedTime(); }
plUnifiedTime plVaultNode::getModifyTime() const { return fFields[kFieldModifyTime] ? fModifyTime : plUnifiedTime(); }
plUnifiedTime plVaultNode::getAutoTime() const { return fFields[kFieldAutoTime] ? fAutoTime : plUnifiedTime(); }
void plVaultNode::makeField(unsigned int field) { fFields[field] = true; switch (field) { case kFieldNodeID: fNodeID = 0; break; case kFieldNodeType: fNodeType = 0; break; case kFieldPermissions: fPermissions = 0; break; case kFieldOwner: fOwner = 0; break; case kFieldGroup: fGroup = 0; break; case kFieldAutoTime: fAutoTime = plUnifiedTime(); break; case kFieldCreator: fCreator = 0; break; case kFieldModifyTime: fModifyTime = plUnifiedTime(); break; case kFieldCreateAgeTime: fCreateAgeTime = plUnifiedTime(); break; case kFieldCreateAgeName: fCreateAgeName = ""; break; case kFieldCreateAgeGuid: fCreateAgeGuid = plServerGuid(); break; case kFieldInt32_1: fInt32[0] = 0; break; case kFieldInt32_2: fInt32[1] = 0; break; case kFieldInt32_3: fInt32[2] = 0; break; case kFieldInt32_4: fInt32[3] = 0; break; case kFieldUInt32_1: fUInt32[0] = 0; break; case kFieldUInt32_2: fUInt32[1] = 0; break; case kFieldUInt32_3: fUInt32[2] = 0; break; case kFieldUInt32_4: fUInt32[3] = 0; break; case kFieldString64_1: fString64[0] = ""; break; case kFieldString64_2: fString64[1] = ""; break; case kFieldString64_3: fString64[2] = ""; break; case kFieldString64_4: fString64[3] = ""; break; case kFieldString64_5: fString64[4] = ""; break; case kFieldString64_6: fString64[5] = ""; break; case kFieldIString64_1: fIString64[0] = ""; break; case kFieldIString64_2: fIString64[1] = ""; break; case kFieldText_1: fText[0] = ""; break; case kFieldText_2: fText[1] = ""; break; case kFieldBlob_1: fBlob1 = plVaultBlob(); break; case kFieldBlob_2: fBlob2 = plVaultBlob(); break; case kFieldGuid_1: fGuid1 = plServerGuid(); break; case kFieldGuid_2: fGuid2 = plServerGuid(); break; default: break; } }