Blob


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