From: Greg Farnum Date: Fri, 26 Apr 2019 05:57:38 +0000 (-0700) Subject: common: make utime_t dencoder-compatible X-Git-Tag: v15.1.0~2796^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=685542431ea69a0201ad16655efeba9e80a2def3;p=ceph.git common: make utime_t dencoder-compatible Signed-off-by: Greg Farnum --- diff --git a/src/include/utime.cc b/src/include/utime.cc new file mode 100644 index 00000000000..0afc1d585a1 --- /dev/null +++ b/src/include/utime.cc @@ -0,0 +1,33 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab +/* + * Ceph - scalable distributed file system + * + * Copyright (C) 2019 Red Hat + * + * This is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software + * Foundation. See file COPYING. + * + */ + +#include "utime.h" +#include "common/Formatter.h" + +void utime_t::dump(ceph::Formatter *f) const +{ + f->open_object_section("utime"); + f->dump_int("seconds", tv.tv_sec); + f->dump_int("nanoseconds", tv.tv_nsec); + f->close_section(); +} + +void utime_t::generate_test_instances(std::list& o) +{ + o.push_back(new utime_t()); + o.push_back(new utime_t()); + o.back()->tv.tv_sec = static_cast<__u32>((1L << 32) - 1); + o.push_back(new utime_t()); + o.back()->tv.tv_nsec = static_cast<__u32>((1L << 32) - 1); +} diff --git a/src/include/utime.h b/src/include/utime.h index f2f88b55e0c..a3faaad7512 100644 --- a/src/include/utime.h +++ b/src/include/utime.h @@ -172,7 +172,9 @@ public: denc(v.tv.tv_nsec, p); } - + void dump(ceph::Formatter *f) const; + static void generate_test_instances(std::list& o); + void encode_timeval(struct ceph_timespec *t) const { t->tv_sec = tv.tv_sec; t->tv_nsec = tv.tv_nsec; diff --git a/src/tools/ceph-dencoder/CMakeLists.txt b/src/tools/ceph-dencoder/CMakeLists.txt index bdaf0785142..887d7cca8c3 100644 --- a/src/tools/ceph-dencoder/CMakeLists.txt +++ b/src/tools/ceph-dencoder/CMakeLists.txt @@ -11,6 +11,7 @@ endif() set(dencoder_srcs ceph_dencoder.cc ../../include/uuid.cc + ../../include/utime.cc $) if(WITH_RADOSGW) list(APPEND dencoder_srcs