Page Menu
Home
GnuPG
Search
Configure Global Search
Log In
Files
F18826599
t-engine-info.c
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Size
3 KB
Subscribers
None
t-engine-info.c
View Options
/* t-engine-info.c - Regression test for gpgme_get_engine_info.
* Copyright (C) 2003, 2004, 2007 g10 Code GmbH
*
* This file is part of GPGME.
*
* GPGME is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 2.1 of
* the License, or (at your option) any later version.
*
* GPGME is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this program; if not, see <https://gnu.org/licenses/>.
* SPDX-License-Identifier: LGPL-2.1-or-later
*/
#ifdef HAVE_CONFIG_H
#include
<config.h>
#endif
#include
<stdlib.h>
#include
<stdio.h>
#include
<string.h>
#include
<gpgme.h>
#define PGM "t-engine-info"
static
int
verbose
;
#define fail_if_err(err) \
do \
{ \
if (err) \
{ \
fprintf (stderr, "%s:%d: gpgme_error_t %s\n", \
__FILE__, __LINE__, gpgme_strerror (err)); \
exit (1); \
} \
} \
while (0)
int
main
(
int
argc
,
char
**
argv
)
{
int
last_argc
=
-1
;
gpgme_engine_info_t
info
;
gpgme_error_t
err
;
if
(
argc
)
{
argc
--
;
argv
++
;
}
while
(
argc
&&
last_argc
!=
argc
)
{
last_argc
=
argc
;
if
(
!
strcmp
(
*
argv
,
"--"
))
{
argc
--
;
argv
++
;
break
;
}
else
if
(
!
strcmp
(
*
argv
,
"--help"
))
{
fputs
(
"usage: "
PGM
" [options]
\n
"
"Options:
\n
"
" --set-global-flag KEY VALUE
\n
"
,
stdout
);
exit
(
0
);
}
else
if
(
!
strcmp
(
*
argv
,
"--verbose"
))
{
verbose
++
;
argc
--
;
argv
++
;
}
else
if
(
!
strcmp
(
*
argv
,
"--set-global-flag"
))
{
argc
--
;
argv
++
;
if
(
argc
<
2
)
{
fprintf
(
stderr
,
PGM
": not enough arguments for option
\n
"
);
exit
(
1
);
}
if
(
gpgme_set_global_flag
(
argv
[
0
],
argv
[
1
]))
{
fprintf
(
stderr
,
PGM
": gpgme_set_global_flag failed
\n
"
);
exit
(
1
);
}
argc
--
;
argv
++
;
argc
--
;
argv
++
;
}
else
if
(
!
strncmp
(
*
argv
,
"--"
,
2
))
{
fprintf
(
stderr
,
PGM
": unknown option '%s'
\n
"
,
*
argv
);
exit
(
1
);
}
}
if
(
argc
)
{
fprintf
(
stderr
,
PGM
": unexpected arguments
\n
"
);
exit
(
1
);
}
gpgme_check_version
(
NULL
);
{
const
char
*
keys
[]
=
{
"homedir"
,
"sysconfdir"
,
"bindir"
,
"libexecdir"
,
"libdir"
,
"datadir"
,
"localedir"
,
"agent-socket"
,
"agent-ssh-socket"
,
"dirmngr-socket"
,
"uiserver-socket"
,
"gpgconf-name"
,
"gpg-name"
,
"gpgsm-name"
,
"g13-name"
,
"gpg-wks-client-name"
,
NULL
};
const
char
*
s
;
int
i
;
for
(
i
=
0
;
keys
[
i
];
i
++
)
if
((
s
=
gpgme_get_dirinfo
(
keys
[
i
])))
fprintf
(
stderr
,
"dirinfo: %s='%s'
\n
"
,
keys
[
i
],
s
);
}
err
=
gpgme_get_engine_info
(
&
info
);
fail_if_err
(
err
);
for
(;
info
;
info
=
info
->
next
)
fprintf
(
stdout
,
"protocol=%d engine='%s' v='%s' (min='%s') home='%s'
\n
"
,
info
->
protocol
,
info
->
file_name
,
info
->
version
,
info
->
req_version
,
info
->
home_dir
?
info
->
home_dir
:
"[default]"
);
return
0
;
}
File Metadata
Details
Attached
Mime Type
text/x-c
Expires
Mon, Dec 23, 5:30 PM (2 h, 8 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
8d/7b/38bcef592f68deffb7a35724b82d
Attached To
rM GPGME
Event Timeline
Log In to Comment