mirror of https://github.com/lukechilds/node.git
Browse Source
In net we default to 'localhost' as the default address for connect. Not doing the same on dgram is confusing, because sending to 0.0.0.0 works on Linux/OS X but not on Windows. Defaulting that to 127.0.0.1 / ::1 addresses that. Related: https://github.com/nodejs/node/pull/5407 Related: https://github.com/nodejs/node/issues/5398 Fixes: https://github.com/nodejs/node/issues/5487 PR-URL: https://github.com/nodejs/node/pull/5493 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Roman Reiss <me@silverwind.io>process-exit-stdio-flushing
Matteo Collina
9 years ago
4 changed files with 46 additions and 18 deletions
@ -0,0 +1,36 @@ |
|||
'use strict'; |
|||
|
|||
const common = require('../common'); |
|||
const assert = require('assert'); |
|||
const dgram = require('dgram'); |
|||
|
|||
if (!common.hasIPv6) { |
|||
console.log('1..0 # Skipped: no IPv6 support'); |
|||
return; |
|||
} |
|||
|
|||
const client = dgram.createSocket('udp6'); |
|||
|
|||
const toSend = [new Buffer(256), new Buffer(256), new Buffer(256), 'hello']; |
|||
|
|||
toSend[0].fill('x'); |
|||
toSend[1].fill('y'); |
|||
toSend[2].fill('z'); |
|||
|
|||
client.on('listening', function() { |
|||
client.send(toSend[0], 0, toSend[0].length, common.PORT); |
|||
client.send(toSend[1], common.PORT); |
|||
client.send([toSend[2]], common.PORT); |
|||
client.send(toSend[3], 0, toSend[3].length, common.PORT); |
|||
}); |
|||
|
|||
client.on('message', function(buf, info) { |
|||
const expected = toSend.shift().toString(); |
|||
assert.ok(buf.toString() === expected, 'message was received correctly'); |
|||
|
|||
if (toSend.length === 0) { |
|||
client.close(); |
|||
} |
|||
}); |
|||
|
|||
client.bind(common.PORT); |
Loading…
Reference in new issue