smbconv.c 531 B

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