1 /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
2 * vim:expandtab:shiftwidth=8:tabstop=8:
4 * Copyright (c) 2002 Cray Inc.
6 * This file is part of Portals, http://www.sf.net/projects/sandiaportals/
11 #define PNAL_NID(in_addr, port) (in_addr)
12 #define PNAL_PID(pid) (pid)
13 #define PNAL_IP(in_addr, port) (in_addr)
14 #define PNAL_PORT(nid, pid) (pid)
17 #define PNAL_BASE_PORT 4096
18 #define PNAL_HOSTID_SHIFT 24
19 #define PNAL_HOSTID_MASK ((1 << PNAL_HOSTID_SHIFT) - 1)
20 #define PNAL_VNODE_SHIFT 8
21 #define PNAL_VNODE_MASK ((1 << PNAL_VNODE_SHIFT) - 1)
22 #define PNAL_PID_SHIFT 8
23 #define PNAL_PID_MASK ((1 << PNAL_PID_SHIFT) - 1)
25 #define PNAL_NID(in_addr, port) (((ntohl(in_addr) & PNAL_HOSTID_MASK) \
26 << PNAL_VNODE_SHIFT) \
27 | (((ntohs(port)-PNAL_BASE_PORT) >>\
29 #define PNAL_PID(port) ((ntohs(port) - PNAL_BASE_PORT) & PNAL_PID_MASK)
31 #define PNAL_IP(nid,t) (htonl((((unsigned)(nid))\
33 | (t->iptop8 << PNAL_HOSTID_SHIFT)))
34 #define PNAL_PORT(nid, pid) (htons(((((nid) & PNAL_VNODE_MASK) \
35 << PNAL_VNODE_SHIFT) \
36 | ((pid) & PNAL_PID_MASK)) \