#define dout_subsys ceph_subsys_auth
#undef dout_prefix
-#define dout_prefix *_dout << "cephx client: "
+#define dout_prefix *_dout << "cephx_client(" << this << "): "
using std::string;
using ceph::bufferlist;
+CephxClientHandler::CephxClientHandler(CephContext *cct_, RotatingKeyRing *rsecrets)
+ : AuthClientHandler(cct_),
+ tickets(cct_),
+ rotating_secrets(rsecrets),
+ keyring(rsecrets->get_keyring())
+{
+ ldout(cct, 20) << "con" << dendl;
+ reset();
+}
+
+CephxClientHandler::~CephxClientHandler()
+{
+ ldout(cct, 20) << "des" << dendl;
+}
+
void CephxClientHandler::reset()
{
ldout(cct,10) << __func__ << dendl;
class KeyRing;
class CephxClientHandler : public AuthClientHandler {
- bool starting;
+ bool starting = false;
/* envelope protocol parameters */
- uint64_t server_challenge;
+ uint64_t server_challenge = 0;
CephXTicketManager tickets;
- CephXTicketHandler* ticket_handler;
+ CephXTicketHandler* ticket_handler = nullptr;
- RotatingKeyRing* rotating_secrets;
- KeyRing *keyring;
+ RotatingKeyRing* rotating_secrets = nullptr;
+ KeyRing *keyring = nullptr;
public:
- CephxClientHandler(CephContext *cct_,
- RotatingKeyRing *rsecrets)
- : AuthClientHandler(cct_),
- starting(false),
- server_challenge(0),
- tickets(cct_),
- ticket_handler(NULL),
- rotating_secrets(rsecrets),
- keyring(rsecrets->get_keyring())
- {
- reset();
- }
+ CephxClientHandler(CephContext *cct_, RotatingKeyRing *rsecrets);
+ ~CephxClientHandler();
CephxClientHandler* clone() const override {
return new CephxClientHandler(*this);