Update copyright year.
[pwmd.git] / src / agent.h
blobe01807dea0f9a6029db7f1f7723fc7f671d7c05c
1 /*
2 Copyright (C) 2016-2019 Ben Kibbey <bjk@luxsci.net>
4 This file is part of pwmd.
6 Pwmd is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 2 of the License, or
9 (at your option) any later version.
11 Pwmd is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with Pwmd. If not, see <http://www.gnu.org/licenses/>.
19 #ifndef AGENT_H
20 #define AGENT_H
22 struct agent_inquire_s
24 char *line;
25 size_t len;
28 struct agent_s
30 char *socket;
31 assuan_context_t ctx;
32 int restart;
33 int did_restart;
34 struct agent_inquire_s *inquire;
35 size_t inquire_maxlen;
36 membuf_t data;
39 gpg_error_t agent_init (struct agent_s **);
40 gpg_error_t agent_connect (struct agent_s *);
41 void agent_free (struct agent_s *agent);
42 gpg_error_t agent_command (struct agent_s *agent, char **result, size_t * len,
43 const char *fmt, ...);
44 gpg_error_t agent_set_option (struct agent_s *agent, const char *name,
45 const char *value);
46 gpg_error_t agent_kill_scd (struct agent_s *);
47 void agent_disconnect (struct agent_s *agent);
49 #endif