Server IP : 172.67.214.6 / Your IP : 216.73.216.124 Web Server : LiteSpeed System : Linux premium900.web-hosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 User : redwjova ( 1790) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/cpanel/ea-ruby27/root/usr/share/passenger/node/vendor-copy/network-byte-order/lib/ |
Upload File : |
/* Copyright 2010 Membase, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ 'use strict'; /*jshint node:true*/ /** * Convert a 16-bit quantity (short integer) from host byte order to network byte order (Little-Endian to Big-Endian). * * @param {Array|Buffer} b Array of octets or a nodejs Buffer * @param {number} i Zero-based index at which to write into b * @param {number} v Value to convert */ exports.htons = function(b, i, v) { b[i] = (0xff & (v >> 8)); b[i + 1] = (0xff & (v)); }; /** * Convert a 16-bit quantity (short integer) from network byte order to host byte order (Big-Endian to Little-Endian). * * @param {Array|Buffer} b Array of octets or a nodejs Buffer to read value from * @param {number} i Zero-based index at which to read from b * @returns {number} */ exports.ntohs = function(b, i) { return ((0xff & b[i]) << 8) | ((0xff & b[i + 1])); }; /** * Convert a 16-bit quantity (short integer) from network byte order to host byte order (Big-Endian to Little-Endian). * * @param {string} s String to read value from * @param {number} i Zero-based index at which to read from s * @returns {number} */ exports.ntohsStr = function(s, i) { return ((0xff & s.charCodeAt(i)) << 8) | ((0xff & s.charCodeAt(i + 1))); }; /** * Convert a 32-bit quantity (long integer) from host byte order to network byte order (Little-Endian to Big-Endian). * * @param {Array|Buffer} b Array of octets or a nodejs Buffer * @param {number} i Zero-based index at which to write into b * @param {number} v Value to convert */ exports.htonl = function(b, i, v) { b[i] = (0xff & (v >> 24)); b[i + 1] = (0xff & (v >> 16)); b[i + 2] = (0xff & (v >> 8)); b[i + 3] = (0xff & (v)); }; /** * Convert a 32-bit quantity (long integer) from network byte order to host byte order (Big-Endian to Little-Endian). * * @param {Array|Buffer} b Array of octets or a nodejs Buffer to read value from * @param {number} i Zero-based index at which to read from b * @returns {number} */ exports.ntohl = function(b, i) { return ((0xff & b[i]) << 24) | ((0xff & b[i + 1]) << 16) | ((0xff & b[i + 2]) << 8) | ((0xff & b[i + 3])); }; /** * Convert a 32-bit quantity (long integer) from network byte order to host byte order (Big-Endian to Little-Endian). * * @param {string} s String to read value from * @param {number} i Zero-based index at which to read from s * @returns {number} */ exports.ntohlStr = function(s, i) { return ((0xff & s.charCodeAt(i)) << 24) | ((0xff & s.charCodeAt(i + 1)) << 16) | ((0xff & s.charCodeAt(i + 2)) << 8) | ((0xff & s.charCodeAt(i + 3))); };