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