1 #include "headers.h" 2 3 ushort smbnhgets(uchar * p)4smbnhgets(uchar *p) 5 { 6 return p[0] | (p[1] << 8); 7 } 8 9 ulong smbnhgetl(uchar * p)10smbnhgetl(uchar *p) 11 { 12 return p[0] | (p[1] << 8) | (p[2] << 16) | (p[3] << 24); 13 } 14 15 void smbhnputs(uchar * p,ushort v)16smbhnputs(uchar *p, ushort v) 17 { 18 p[0] = v; 19 p[1] = v >> 8; 20 } 21 22 void smbhnputl(uchar * p,ulong v)23smbhnputl(uchar *p, ulong v) 24 { 25 p[0] = v; 26 p[1] = v >> 8; 27 p[2] = v >> 16; 28 p[3] = v >> 24; 29 } 30 31 void smbhnputv(uchar * p,vlong v)32smbhnputv(uchar *p, vlong v) 33 { 34 smbhnputl(p, v); 35 smbhnputl(p + 4, (v >> 32) & 0xffffffff); 36 } 37 38 vlong smbnhgetv(uchar * p)39smbnhgetv(uchar *p) 40 { 41 return (vlong)smbnhgetl(p) | ((vlong)smbnhgetl(p + 4) << 32); 42 } 43