@bnoordhuis In order to clean up some of these resources I must move them away from a ```const char*``` to a ```char*``` which would require a typecast.

You had me move away from [reinterpret_cast](https://github.com/joyent/node/pull/5604#discussion-diff-4622880), which leads me to ask if it is *ok* to do something similar to the following.

```
  char* data = Buffer::Data(args[0]);
  if (data == NULL)
    return Undefined(node_isolate);

  int i = certificate->VerifySpkac((const char*)data, length);

  delete[] data

  return Boolean::New(i > 0);
```

This allows the resource cleanup but goes against your previous recommendation. On a side note I examined other similar bits within crypto.cc and found many more instances of the following examples (which currently do not explicitly call ```delete```.

IE. ```char* data = Buffer::Data(args[0])```

[Line 1350](https://github.com/joyent/node/blob/master/src/node_crypto.cc#L1350)
[Line 1391](https://github.com/joyent/node/blob/master/src/node_crypto.cc#L1391)

Perhaps I am missing something but as defined in *src/node_buffer.h* ```Buffer::Data()``` performs a *safe copy* of the char array indicating it doesn't actually *need* to be cleaned using ```delete```.

Please advise, thanks.