posix-socket-messaging

0.0.1 • Public • Published

posix-socket-messaging

This module implements the same simple messaging protocol as net-socket-messaging but in a synchronous manner on top of posix-socket.

Disclaimer Doing synchronous stuff in JavaScript is bad and you should not do it. That being said, if you are going to do synchronous communication anyway you might as well do it efficiently and avoid the horrendous performance overhead of the synchronous functionalities of child_process and fs.

Example

const PosixSocket = require("posix-socket");
const {send, receive} = require("posix-socket-messaging");
const sockfd = PosixSocket.socket(PosixSocket.AF_INET6, PosixSocket.SOCK_STREAM, 0);
PosixSocket.connect(sockfd, {
  sin6_family: PosixSocket.AF_INET6,
  sin6_port: 8080,
  sin6_flowinfo: 0,
  sin6_addr: "::1",
  sin6_scope_id: 0
});
send(sockfd, "foo");
console.log(receive(sockfd));
PosixSocket.close(sockfd);

API

send(sockfd, message)

Synchronously send a message.

  • sockfd <integer>: the file descriptor of the socket.
  • message <string>: the message to send which cannot be longer than 256 * 2^20 characters.

message = receive(sockfd)

Synchronously receive a message.

Yes, this will block the entire node process up until you completely receive a message.

  • sockfd <integer>: the file descriptor of the socket.
  • message <string>: the received message.

Package Sidebar

Install

npm i posix-socket-messaging

Weekly Downloads

2,605

Version

0.0.1

License

MIT

Unpacked Size

7.74 kB

Total Files

6

Last publish

Collaborators

  • lachrist