Crypt-GpgME
view release on metacpan or search on metacpan
xs/GpgME.xs view on Meta::CPAN
gpgme_set_locale (ctx, category, value)
perl_gpgme_ctx_or_null_t ctx
int category
const char *value
void
gpgme_get_engine_info (ctx)
perl_gpgme_ctx_or_null_t ctx
PREINIT:
gpgme_engine_info_t info, i;
PPCODE:
if (ctx == NULL) {
gpgme_error_t err;
err = gpgme_get_engine_info (&info);
perl_gpgme_assert_error (err);
}
else {
info = gpgme_ctx_get_engine_info (ctx);
}
for (i = info; i != NULL; i = i->next) {
xs/GpgME.xs view on Meta::CPAN
gpgme_ctx_t ctx
const char *name
const char *value
gpgme_sig_notation_flags_t flags
void
gpgme_sig_notation_get (ctx)
gpgme_ctx_t ctx
PREINIT:
gpgme_sig_notation_t notations, i;
PPCODE:
notations = gpgme_sig_notation_get (ctx);
for (i = notations; i != NULL; i = i->next) {
XPUSHs (sv_2mortal (perl_gpgme_hashref_from_notation (i)));
}
gpgme_key_t
gpgme_get_key (ctx, fpr, secret=0)
gpgme_ctx_t ctx
const char *fpr
xs/GpgME.xs view on Meta::CPAN
PREINIT:
gpgme_error_t err;
gpgme_data_t plain = NULL;
gpgme_verify_result_t result;
INIT:
gpgme_data_seek (sig, 0, SEEK_SET);
if (signed_text) {
gpgme_data_seek (signed_text, 0, SEEK_SET);
}
PPCODE:
if (!signed_text) {
err = gpgme_data_new (&plain);
perl_gpgme_assert_error (err);
}
err = gpgme_op_verify (ctx, sig, signed_text, plain);
perl_gpgme_assert_error (err);
result = gpgme_op_verify_result (ctx);
xs/GpgME.xs view on Meta::CPAN
pubkey = NULL;
seckey = NULL;
break;
default:
err = gpgme_data_new (&pubkey);
perl_gpgme_assert_error (err);
err = gpgme_data_new (&seckey);
perl_gpgme_assert_error (err);
}
PPCODE:
err = gpgme_op_genkey (ctx, parms, pubkey, seckey);
perl_gpgme_assert_error (err);
result = gpgme_op_genkey_result (ctx);
EXTEND (sp, 3);
PUSHs (perl_gpgme_genkey_result_to_sv (result));
PUSHs (perl_gpgme_data_to_sv (pubkey));
PUSHs (perl_gpgme_data_to_sv (seckey));
xs/GpgME.xs view on Meta::CPAN
RETVAL
void
gpgme_keylist (ctx, pattern, secret_only=0)
gpgme_ctx_t ctx
const char *pattern
int secret_only
PREINIT:
gpgme_error_t err;
gpgme_key_t key;
PPCODE:
err = gpgme_op_keylist_start (ctx, pattern, secret_only);
perl_gpgme_assert_error (err);
while ((err = gpgme_op_keylist_next (ctx, &key)) == GPG_ERR_NO_ERROR) {
XPUSHs (perl_gpgme_new_sv_from_ptr (key, "Crypt::GpgME::Key"));
}
if (gpg_err_code (err) != GPG_ERR_EOF) {
perl_gpgme_assert_error (err);
}
void
gpgme_trustlist (ctx, pattern, max_level)
gpgme_ctx_t ctx
const char *pattern
int max_level
PREINIT:
gpgme_error_t err;
gpgme_trust_item_t item;
PPCODE:
err = gpgme_op_trustlist_start (ctx, pattern, max_level);
perl_gpgme_assert_error (err);
while ((err = gpgme_op_trustlist_next (ctx, &item)) == GPG_ERR_NO_ERROR) {
XPUSHs (perl_gpgme_hashref_from_trust_item (item));
gpgme_trust_item_unref (item);
}
if (gpg_err_code (err) != GPG_ERR_EOF) {
perl_gpgme_assert_error (err);
xs/GpgMEKey.xs view on Meta::CPAN
CODE:
RETVAL = key->owner_trust;
OUTPUT:
RETVAL
void
subkeys (key)
gpgme_key_t key
PREINIT:
gpgme_subkey_t i;
PPCODE:
for (i = key->subkeys; i != NULL; i = i->next) {
XPUSHs (sv_2mortal (perl_gpgme_hashref_from_subkey (i)));
}
void
uids (key)
gpgme_key_t key
PREINIT:
gpgme_user_id_t i;
PPCODE:
for (i = key->uids; i != NULL; i = i->next) {
XPUSHs (sv_2mortal (perl_gpgme_hashref_from_uid (i)));
}
gpgme_keylist_mode_t
keylist_mode (key)
gpgme_key_t key
CODE:
RETVAL = key->keylist_mode;
OUTPUT:
( run in 0.736 second using v1.01-cache-2.11-cpan-71847e10f99 )