@@ -77,6 +77,19 @@ Napi::Number bind_wc_RsaKeyToDer(const Napi::CallbackInfo& info)
7777 return Napi::Number::New ( env, ret );
7878}
7979
80+ Napi::Number bind_wc_RsaKeyToPublicDer (const Napi::CallbackInfo& info)
81+ {
82+ int ret;
83+ Napi::Env env = info.Env ();
84+ RsaKey* rsa = (RsaKey*)( info[0 ].As <Napi::Uint8Array>().Data () );
85+ uint8_t * out = info[1 ].As <Napi::Uint8Array>().Data ();
86+ int outSz = info[2 ].As <Napi::Number>().Int32Value ();
87+
88+ ret = wc_RsaKeyToPublicDer ( rsa, out, outSz );
89+
90+ return Napi::Number::New ( env, ret );
91+ }
92+
8093Napi::Number bind_wc_RsaPrivateKeyDecode (const Napi::CallbackInfo& info)
8194{
8295 int ret;
@@ -110,12 +123,12 @@ Napi::Number bind_wc_RsaPublicEncrypt(const Napi::CallbackInfo& info)
110123 int ret;
111124 Napi::Env env = info.Env ();
112125 uint8_t * in = info[0 ].As <Napi::Uint8Array>().Data ();
113- int inLen = info[1 ].As <Napi::Number>().Int32Value ();
126+ int in_len = info[1 ].As <Napi::Number>().Int32Value ();
114127 uint8_t * out = info[2 ].As <Napi::Uint8Array>().Data ();
115- int outLen = info[3 ].As <Napi::Number>().Int32Value ();
128+ int out_len = info[3 ].As <Napi::Number>().Int32Value ();
116129 RsaKey* rsa = (RsaKey*)( info[4 ].As <Napi::Uint8Array>().Data () );
117130
118- ret = wc_RsaPublicEncrypt ( in, inLen , out, outLen , rsa, rsa->rng );
131+ ret = wc_RsaPublicEncrypt ( in, in_len , out, out_len , rsa, rsa->rng );
119132
120133 return Napi::Number::New ( env, ret );
121134}
@@ -125,12 +138,42 @@ Napi::Number bind_wc_RsaPrivateDecrypt(const Napi::CallbackInfo& info)
125138 int ret;
126139 Napi::Env env = info.Env ();
127140 uint8_t * in = info[0 ].As <Napi::Uint8Array>().Data ();
128- int inLen = info[1 ].As <Napi::Number>().Int32Value ();
141+ int in_len = info[1 ].As <Napi::Number>().Int32Value ();
142+ uint8_t * out = info[2 ].As <Napi::Uint8Array>().Data ();
143+ int out_len = info[3 ].As <Napi::Number>().Int32Value ();
144+ RsaKey* rsa = (RsaKey*)( info[4 ].As <Napi::Uint8Array>().Data () );
145+
146+ ret = wc_RsaPrivateDecrypt ( in, in_len, out, out_len, rsa );
147+
148+ return Napi::Number::New ( env, ret );
149+ }
150+
151+ Napi::Number bind_wc_RsaSSL_Sign (const Napi::CallbackInfo& info)
152+ {
153+ int ret;
154+ Napi::Env env = info.Env ();
155+ uint8_t * in = info[0 ].As <Napi::Uint8Array>().Data ();
156+ int in_len = info[1 ].As <Napi::Number>().Int32Value ();
157+ uint8_t * out = info[2 ].As <Napi::Uint8Array>().Data ();
158+ int out_len = info[3 ].As <Napi::Number>().Int32Value ();
159+ RsaKey* rsa = (RsaKey*)( info[4 ].As <Napi::Uint8Array>().Data () );
160+
161+ ret = wc_RsaSSL_Sign ( in, in_len, out, out_len, rsa, rsa->rng );
162+
163+ return Napi::Number::New ( env, ret );
164+ }
165+
166+ Napi::Number bind_wc_RsaSSL_Verify (const Napi::CallbackInfo& info)
167+ {
168+ int ret;
169+ Napi::Env env = info.Env ();
170+ uint8_t * in = info[0 ].As <Napi::Uint8Array>().Data ();
171+ int in_len = info[1 ].As <Napi::Number>().Int32Value ();
129172 uint8_t * out = info[2 ].As <Napi::Uint8Array>().Data ();
130- int outLen = info[3 ].As <Napi::Number>().Int32Value ();
173+ int out_len = info[3 ].As <Napi::Number>().Int32Value ();
131174 RsaKey* rsa = (RsaKey*)( info[4 ].As <Napi::Uint8Array>().Data () );
132175
133- ret = wc_RsaPrivateDecrypt ( in, inLen , out, outLen , rsa );
176+ ret = wc_RsaSSL_Verify ( in, in_len , out, out_len , rsa );
134177
135178 return Napi::Number::New ( env, ret );
136179}
0 commit comments