1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek/*
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek SSSD
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek KCM Server - private header file
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek Copyright (C) Red Hat, 2016
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek This program is free software; you can redistribute it and/or modify
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek it under the terms of the GNU General Public License as published by
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek the Free Software Foundation; either version 3 of the License, or
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek (at your option) any later version.
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek This program is distributed in the hope that it will be useful,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek but WITHOUT ANY WARRANTY; without even the implied warranty of
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek GNU General Public License for more details.
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek You should have received a copy of the GNU General Public License
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek along with this program. If not, see <http://www.gnu.org/licenses/>.
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek*/
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#ifndef __KCMSRV_OPS_H__
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#define __KCMSRV_OPS_H__
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#include "config.h"
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#include <sys/types.h>
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#include "util/sss_iobuf.h"
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#include "responder/kcm/kcmsrv_pvt.h"
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozekstruct kcm_op;
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozekstruct kcm_op *kcm_get_opt(uint16_t opcode);
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozekconst char *kcm_opt_name(struct kcm_op *op);
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozekstruct tevent_req *kcm_cmd_send(TALLOC_CTX *mem_ctx,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct tevent_context *ev,
2b5518eeaacc6245cfa77ee4a7086f16208060fcJakub Hrozek struct kcm_ops_queue_ctx *qctx,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct kcm_resp_ctx *kcm_data,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct cli_creds *client,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct kcm_data *input,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct kcm_op *op);
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozekerrno_t kcm_cmd_recv(TALLOC_CTX *mem_ctx,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct tevent_req *req,
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek struct sss_iobuf **_reply);
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek
1ec4198f38d34a1f82a2db55d8c9782a434fb55fJakub Hrozek#endif /* __KCMSRV_OPS_H__ */