Skip to content

Use of os.hostname() causes runtime crash on Wndows 7 #263

@FlyingDR

Description

@FlyingDR

Hello,

At this moment library relies on the use of os.hostname() as a part of the fingerprint generator for Node.js:

https://github.com/ericelliott/cuid/blob/fb9bb90644110474253bf8e03fbf26668cd105c0/lib/fingerprint.js#L6

This method is broken on Windows 7 due to nodejs/node#25111 with a root cause libuv/libuv#3260.

Since your library is quite popular and required change is very small - I would want to propose to avoid using os.hostname() on affected platform.

Example patch may look like this:

--- lib/fingerprint.js
+++ lib/fingerprint.js
@@ -3,7 +3,7 @@ var pad = require('./pad.js');
 var os = require('os'),
     padding = 2,
     pid = pad(process.pid.toString(36), padding),
-    hostname = os.hostname(),
+    hostname = os.version().indexOf('Windows 7 ') === 0 ? 'windows7' : os.hostname(),
     length = hostname.length,
     hostId = pad(hostname
       .split('') 

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions