190 i++; /* Next extension */ |
190 i++; /* Next extension */ |
191 } |
191 } |
192 return 1; |
192 return 1; |
193 } |
193 } |
194 |
194 |
|
195 int meth_valid_at(lua_State* L) |
|
196 { |
|
197 X509* cert = luasec_to_x509(L, 1); |
|
198 time_t time = luaL_checkinteger(L, 2); |
|
199 lua_pushboolean(L, (X509_cmp_time(X509_get_notAfter(cert), &time) > 0 |
|
200 && X509_cmp_time(X509_get_notBefore(cert), &time) < 0)); |
|
201 return 1; |
|
202 } |
|
203 |
195 int meth_pem(lua_State* L) |
204 int meth_pem(lua_State* L) |
196 { |
205 { |
197 X509* cert = luasec_to_x509(L, 1); |
206 X509* cert = luasec_to_x509(L, 1); |
198 BIO *bio = BIO_new(BIO_s_mem()); |
207 BIO *bio = BIO_new(BIO_s_mem()); |
199 char* data; long bytes; |
208 char* data; long bytes; |
254 */ |
263 */ |
255 static luaL_Reg meta[] = { |
264 static luaL_Reg meta[] = { |
256 {"subject", meth_subject}, |
265 {"subject", meth_subject}, |
257 {"issuer", meth_issuer}, |
266 {"issuer", meth_issuer}, |
258 {"extensions", meth_extensions}, |
267 {"extensions", meth_extensions}, |
|
268 {"valid_at", meth_valid_at}, |
259 {"pem", meth_pem}, |
269 {"pem", meth_pem}, |
260 {"digest", meth_digest}, |
270 {"digest", meth_digest}, |
261 {NULL, NULL} |
271 {NULL, NULL} |
262 }; |
272 }; |
263 |
273 |