Lines Matching refs:xi

24 	struct ceph_x_info *xi = ac->private;
29 ac->want_keys, need, xi->have_keys);
30 return (ac->want_keys & xi->have_keys) == ac->want_keys;
35 struct ceph_x_info *xi = ac->private;
40 ac->want_keys, need, xi->have_keys);
120 struct ceph_x_info *xi = ac->private;
121 struct rb_node *parent = NULL, **p = &xi->ticket_handlers.rb_node;
140 rb_insert_color(&th->node, &xi->ticket_handlers);
147 struct ceph_x_info *xi = ac->private;
150 rb_erase(&th->node, &xi->ticket_handlers);
161 struct ceph_x_info *xi = ac->private;
256 xi->have_keys |= th->service;
456 struct ceph_x_info *xi = ac->private;
459 *pneed = ac->want_keys & ~(xi->have_keys);
479 xi->have_keys &= ~service;
486 struct ceph_x_info *xi = ac->private;
499 ac->want_keys, xi->have_keys, need);
504 void *enc_buf = xi->auth_authorizer.enc_buf;
518 blob->server_challenge = cpu_to_le64(xi->server_challenge);
519 ret = ceph_x_encrypt(&xi->secret, enc_buf, CEPHX_AU_ENC_BUF_LEN,
529 xi->server_challenge, le64_to_cpu(auth->client_challenge),
548 ret = ceph_x_build_authorizer(ac, th, &xi->auth_authorizer);
551 ceph_encode_copy(&p, xi->auth_authorizer.buf->vec.iov_base,
552 xi->auth_authorizer.buf->vec.iov_len);
566 struct ceph_x_info *xi = ac->private;
576 if (xi->starting) {
582 xi->server_challenge = le64_to_cpu(sc->server_challenge);
584 xi->server_challenge);
585 xi->starting = false;
586 xi->have_keys &= ~CEPH_ENTITY_TYPE_AUTH;
596 ret = ceph_x_proc_ticket_reply(ac, &xi->secret,
613 if (ac->want_keys == xi->have_keys)
756 struct ceph_x_info *xi = ac->private;
759 xi->starting = true;
760 xi->server_challenge = 0;
765 struct ceph_x_info *xi = ac->private;
769 ceph_crypto_key_destroy(&xi->secret);
771 while ((p = rb_first(&xi->ticket_handlers)) != NULL) {
777 ceph_x_authorizer_cleanup(&xi->auth_authorizer);
933 struct ceph_x_info *xi;
938 xi = kzalloc(sizeof(*xi), GFP_NOFS);
939 if (!xi)
948 ret = ceph_crypto_key_clone(&xi->secret, ac->key);
954 xi->starting = true;
955 xi->ticket_handlers = RB_ROOT;
958 ac->private = xi;
963 kfree(xi);