1*58da3067SDavid du Colombier #include <u.h> 2*58da3067SDavid du Colombier #include <libc.h> 3*58da3067SDavid du Colombier #include <ip.h> 4*58da3067SDavid du Colombier 5*58da3067SDavid du Colombier void hnputv(void * p,uvlong v)6*58da3067SDavid du Colombierhnputv(void *p, uvlong v) 7*58da3067SDavid du Colombier { 8*58da3067SDavid du Colombier uchar *a; 9*58da3067SDavid du Colombier 10*58da3067SDavid du Colombier a = p; 11*58da3067SDavid du Colombier a[0] = v>>56; 12*58da3067SDavid du Colombier a[1] = v>>48; 13*58da3067SDavid du Colombier a[2] = v>>40; 14*58da3067SDavid du Colombier a[3] = v>>32; 15*58da3067SDavid du Colombier a[4] = v>>24; 16*58da3067SDavid du Colombier a[5] = v>>16; 17*58da3067SDavid du Colombier a[6] = v>>8; 18*58da3067SDavid du Colombier a[7] = v; 19*58da3067SDavid du Colombier } 20*58da3067SDavid du Colombier 21*58da3067SDavid du Colombier void hnputl(void * p,uint v)22*58da3067SDavid du Colombierhnputl(void *p, uint v) 23*58da3067SDavid du Colombier { 24*58da3067SDavid du Colombier uchar *a; 25*58da3067SDavid du Colombier 26*58da3067SDavid du Colombier a = p; 27*58da3067SDavid du Colombier a[0] = v>>24; 28*58da3067SDavid du Colombier a[1] = v>>16; 29*58da3067SDavid du Colombier a[2] = v>>8; 30*58da3067SDavid du Colombier a[3] = v; 31*58da3067SDavid du Colombier } 32*58da3067SDavid du Colombier 33*58da3067SDavid du Colombier void hnputs(void * p,ushort v)34*58da3067SDavid du Colombierhnputs(void *p, ushort v) 35*58da3067SDavid du Colombier { 36*58da3067SDavid du Colombier uchar *a; 37*58da3067SDavid du Colombier 38*58da3067SDavid du Colombier a = p; 39*58da3067SDavid du Colombier a[0] = v>>8; 40*58da3067SDavid du Colombier a[1] = v; 41*58da3067SDavid du Colombier } 42*58da3067SDavid du Colombier 43*58da3067SDavid du Colombier uvlong nhgetv(void * p)44*58da3067SDavid du Colombiernhgetv(void *p) 45*58da3067SDavid du Colombier { 46*58da3067SDavid du Colombier uchar *a; 47*58da3067SDavid du Colombier uvlong v; 48*58da3067SDavid du Colombier 49*58da3067SDavid du Colombier a = p; 50*58da3067SDavid du Colombier v = (uvlong)a[0]<<56; 51*58da3067SDavid du Colombier v |= (uvlong)a[1]<<48; 52*58da3067SDavid du Colombier v |= (uvlong)a[2]<<40; 53*58da3067SDavid du Colombier v |= (uvlong)a[3]<<32; 54*58da3067SDavid du Colombier v |= a[4]<<24; 55*58da3067SDavid du Colombier v |= a[5]<<16; 56*58da3067SDavid du Colombier v |= a[6]<<8; 57*58da3067SDavid du Colombier v |= a[7]<<0; 58*58da3067SDavid du Colombier return v; 59*58da3067SDavid du Colombier } 60*58da3067SDavid du Colombier 61*58da3067SDavid du Colombier uint nhgetl(void * p)62*58da3067SDavid du Colombiernhgetl(void *p) 63*58da3067SDavid du Colombier { 64*58da3067SDavid du Colombier uchar *a; 65*58da3067SDavid du Colombier 66*58da3067SDavid du Colombier a = p; 67*58da3067SDavid du Colombier return (a[0]<<24)|(a[1]<<16)|(a[2]<<8)|(a[3]<<0); 68*58da3067SDavid du Colombier } 69*58da3067SDavid du Colombier 70*58da3067SDavid du Colombier ushort nhgets(void * p)71*58da3067SDavid du Colombiernhgets(void *p) 72*58da3067SDavid du Colombier { 73*58da3067SDavid du Colombier uchar *a; 74*58da3067SDavid du Colombier 75*58da3067SDavid du Colombier a = p; 76*58da3067SDavid du Colombier return (a[0]<<8)|(a[1]<<0); 77*58da3067SDavid du Colombier } 78