JoshKaufman / ursa

URSA - RSA public/private key OpenSSL bindings for Node.js
Other
619 stars 135 forks source link

Node 12 #185

Open iliakan opened 5 years ago

iliakan commented 5 years ago

Any support?

theoparis commented 4 years ago

I wish, because it doesn't work and gives me a ton of errors when it builds in node-gyp like this: 'CompileUnbound': identifier not found

'Handle': is not a member of 'v8'

garethdown44 commented 4 years ago

Output when installing on node 12.14.1

> node-gyp rebuild

  CXX(target) Release/obj.target/ursaNative/src/ursaNative.o
../src/ursaNative.cc:208:34: error: too few arguments to function call, single argument 'isolate' was not specified
    int length = str->Utf8Length();
                 ~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2722:3: note: 'Utf8Length' declared here
  int Utf8Length(Isolate* isolate) const;
  ^
../src/ursaNative.cc:217:20: error: cannot initialize a parameter of type 'v8::Isolate *' with an lvalue of type 'char *'
    str->WriteUtf8(result, length + 1);
                   ^~~~~~
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2782:26: note: passing argument to parameter 'isolate' here
  int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
                         ^
../src/ursaNative.cc:342:70: error: too few arguments to function call, single argument 'context' was not specified
    target->Set(NanNew("RsaWrap").ToLocalChecked(), tpl->GetFunction());
                                                    ~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:5995:3: note: 'GetFunction' declared here
  V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:343:40: error: too few arguments to function call, single argument 'context' was not specified
    constructor.Reset(tpl->GetFunction());
                      ~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:5995:3: note: 'GetFunction' declared here
  V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:345:106: error: too few arguments to function call, single argument 'context' was not specified
    target->Set(NanNew("textToNid").ToLocalChecked(), Nan::New<FunctionTemplate>(TextToNid)->GetFunction());
                                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:5995:3: note: 'GetFunction' declared here
  V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:389:13: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    obj->rsa->n = BN_bin2bn(data_n, n_length, NULL);
            ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:390:13: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    obj->rsa->e = BN_bin2bn(data_e, e_length, NULL);
            ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:407:35: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    if ((obj == NULL) || (obj->rsa->d != NULL)) {
                                  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:488:44: error: too few arguments to function call, single argument 'context' was not specified
    int modulusBits = args[0]->Uint32Value();
                      ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:489:41: error: too few arguments to function call, single argument 'context' was not specified
    int exponent = args[1]->Uint32Value();
                   ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:536:34: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    bignumToBuffer(args, obj->rsa->e);
                                 ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:552:34: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    bignumToBuffer(args, obj->rsa->d);
                                 ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:567:34: error: member access into incomplete type 'RSA' (aka 'rsa_st')
    bignumToBuffer(args, obj->rsa->n);
                                 ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
typedef struct rsa_st RSA;
               ^
../src/ursaNative.cc:683:40: error: too few arguments to function call, single argument 'context' was not specified
    int padding = args[1]->Uint32Value();
                  ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:730:40: error: too few arguments to function call, single argument 'context' was not specified
    int padding = args[1]->Uint32Value();
                  ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:776:40: error: too few arguments to function call, single argument 'context' was not specified
    int padding = args[1]->Uint32Value();
                  ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:822:40: error: too few arguments to function call, single argument 'context' was not specified
    int padding = args[1]->Uint32Value();
                  ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:928:36: error: too few arguments to function call, single argument 'context' was not specified
    int nid = args[0]->Uint32Value();
              ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../src/ursaNative.cc:982:36: error: too few arguments to function call, single argument 'context' was not specified
    int nid = args[0]->Uint32Value();
              ~~~~~~~~~~~~~~~~~~~~ ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8.h:2611:3: note: 'Uint32Value' declared here
  V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
  ^
/Users/garethd/Library/Caches/node-gyp/12.14.1/include/node/v8config.h:351:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
SaKaMaSoft commented 4 years ago

We still have the same problem, we have any solution ?