Ruby  2.4.2p198(2017-09-14revision59899)
Macros | Functions | Variables
ossl_ns_spki.c File Reference
#include "ossl.h"
Include dependency graph for ossl_ns_spki.c:

Go to the source code of this file.

Macros

#define NewSPKI(klass)   TypedData_Wrap_Struct((klass), &ossl_netscape_spki_type, 0)
 
#define SetSPKI(obj, spki)
 
#define GetSPKI(obj, spki)
 

Functions

static void ossl_netscape_spki_free (void *spki)
 
static VALUE ossl_spki_alloc (VALUE klass)
 
static VALUE ossl_spki_initialize (int argc, VALUE *argv, VALUE self)
 
static VALUE ossl_spki_to_der (VALUE self)
 
static VALUE ossl_spki_to_pem (VALUE self)
 
static VALUE ossl_spki_print (VALUE self)
 
static VALUE ossl_spki_get_public_key (VALUE self)
 
static VALUE ossl_spki_set_public_key (VALUE self, VALUE key)
 
static VALUE ossl_spki_get_challenge (VALUE self)
 
static VALUE ossl_spki_set_challenge (VALUE self, VALUE str)
 
static VALUE ossl_spki_sign (VALUE self, VALUE key, VALUE digest)
 
static VALUE ossl_spki_verify (VALUE self, VALUE key)
 
void Init_ossl_ns_spki (void)
 

Variables

VALUE mNetscape
 
VALUE cSPKI
 
VALUE eSPKIError
 
static const rb_data_type_t ossl_netscape_spki_type
 

Macro Definition Documentation

◆ GetSPKI

#define GetSPKI (   obj,
  spki 
)
Value:
do { \
TypedData_Get_Struct((obj), NETSCAPE_SPKI, &ossl_netscape_spki_type, (spki)); \
if (!(spki)) { \
ossl_raise(rb_eRuntimeError, "SPKI wasn't initialized!"); \
} \
} while (0)
VALUE rb_eRuntimeError
Definition: error.c:761
static const rb_data_type_t ossl_netscape_spki_type
Definition: ossl_ns_spki.c:48

Definition at line 20 of file ossl_ns_spki.c.

Referenced by ossl_spki_get_challenge(), ossl_spki_get_public_key(), ossl_spki_print(), ossl_spki_set_challenge(), ossl_spki_set_public_key(), ossl_spki_sign(), ossl_spki_to_der(), ossl_spki_to_pem(), and ossl_spki_verify().

◆ NewSPKI

#define NewSPKI (   klass)    TypedData_Wrap_Struct((klass), &ossl_netscape_spki_type, 0)

Definition at line 12 of file ossl_ns_spki.c.

Referenced by ossl_spki_alloc().

◆ SetSPKI

#define SetSPKI (   obj,
  spki 
)
Value:
do { \
if (!(spki)) { \
ossl_raise(rb_eRuntimeError, "SPKI wasn't initialized!"); \
} \
RTYPEDDATA_DATA(obj) = (spki); \
} while (0)
VALUE rb_eRuntimeError
Definition: error.c:761

Definition at line 14 of file ossl_ns_spki.c.

Referenced by ossl_spki_alloc(), and ossl_spki_initialize().

Function Documentation

◆ Init_ossl_ns_spki()

void Init_ossl_ns_spki ( void  )

◆ ossl_netscape_spki_free()

static void ossl_netscape_spki_free ( void *  spki)
static

Definition at line 43 of file ossl_ns_spki.c.

◆ ossl_spki_alloc()

static VALUE ossl_spki_alloc ( VALUE  klass)
static

Definition at line 57 of file ossl_ns_spki.c.

References eSPKIError, NewSPKI, NULL, ossl_raise(), and SetSPKI.

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_get_challenge()

static VALUE ossl_spki_get_challenge ( VALUE  self)
static

Definition at line 227 of file ossl_ns_spki.c.

References GetSPKI, OSSL_Debug, and rb_str_new().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_get_public_key()

static VALUE ossl_spki_get_public_key ( VALUE  self)
static

Definition at line 183 of file ossl_ns_spki.c.

References eSPKIError, GetSPKI, NULL, ossl_pkey_new(), and ossl_raise().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_initialize()

static VALUE ossl_spki_initialize ( int  argc,
VALUE argv,
VALUE  self 
)
static

◆ ossl_spki_print()

static VALUE ossl_spki_print ( VALUE  self)
static

Definition at line 158 of file ossl_ns_spki.c.

References eSPKIError, GetSPKI, NULL, ossl_membio2str(), and ossl_raise().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_set_challenge()

static VALUE ossl_spki_set_challenge ( VALUE  self,
VALUE  str 
)
static

Definition at line 252 of file ossl_ns_spki.c.

References eSPKIError, GetSPKI, NULL, ossl_raise(), RSTRING_LENINT, RSTRING_PTR, and StringValue.

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_set_public_key()

static VALUE ossl_spki_set_public_key ( VALUE  self,
VALUE  key 
)
static

Definition at line 208 of file ossl_ns_spki.c.

References eSPKIError, GetPKeyPtr(), GetSPKI, key, NULL, and ossl_raise().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_sign()

static VALUE ossl_spki_sign ( VALUE  self,
VALUE  key,
VALUE  digest 
)
static

Definition at line 280 of file ossl_ns_spki.c.

References eSPKIError, GetDigestPtr(), GetPrivPKeyPtr(), GetSPKI, NULL, and ossl_raise().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_to_der()

static VALUE ossl_spki_to_der ( VALUE  self)
static

Definition at line 109 of file ossl_ns_spki.c.

References eX509CertError, GetSPKI, len, NULL, ossl_raise(), ossl_str_adjust, rb_str_new(), and RSTRING_PTR.

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_to_pem()

static VALUE ossl_spki_to_pem ( VALUE  self)
static

Definition at line 135 of file ossl_ns_spki.c.

References eSPKIError, GetSPKI, NULL, ossl_buf2str(), ossl_raise(), rb_long2int, and strlen().

Referenced by Init_ossl_ns_spki().

◆ ossl_spki_verify()

static VALUE ossl_spki_verify ( VALUE  self,
VALUE  key 
)
static

Definition at line 307 of file ossl_ns_spki.c.

References eSPKIError, GetPKeyPtr(), GetSPKI, NULL, ossl_raise(), Qfalse, Qnil, and Qtrue.

Referenced by Init_ossl_ns_spki().

Variable Documentation

◆ cSPKI

VALUE cSPKI

Definition at line 31 of file ossl_ns_spki.c.

Referenced by Init_ossl_ns_spki().

◆ eSPKIError

VALUE eSPKIError

◆ mNetscape

VALUE mNetscape

Definition at line 30 of file ossl_ns_spki.c.

Referenced by Init_ossl_ns_spki().

◆ ossl_netscape_spki_type

const rb_data_type_t ossl_netscape_spki_type
static
Initial value:
= {
"OpenSSL/NETSCAPE_SPKI",
{
},
}
#define RUBY_TYPED_FREE_IMMEDIATELY
Definition: ruby.h:1145
static void ossl_netscape_spki_free(void *spki)
Definition: ossl_ns_spki.c:43

Definition at line 48 of file ossl_ns_spki.c.