msg_file_query_info_test.go 940 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package smb
  2. import (
  3. "bytes"
  4. "encoding/hex"
  5. "fmt"
  6. "io/ioutil"
  7. "testing"
  8. "imuslab.com/smb/driver/mod/smb/encoder"
  9. "github.com/stretchr/testify/assert"
  10. )
  11. func Test_query_info(t *testing.T) {
  12. filename := "names"
  13. var info = SMB2_FILE_ALL_INFO{
  14. FileName: encoder.ToUnicode(filename),
  15. }
  16. infobuf, err := encoder.Marshal(info)
  17. if err != nil {
  18. t.Fatalf("err")
  19. }
  20. var info2 = SMB2_FILE_ALL_INFO{}
  21. err = encoder.Unmarshal(infobuf, &info2)
  22. if err != nil {
  23. t.Fatalf("err")
  24. }
  25. if !bytes.Equal(info2.FileName, info.FileName) {
  26. t.Fatalf("err")
  27. }
  28. resp := QueryInfoResponse{
  29. StructureSize: 9,
  30. OutputBuffer: infobuf,
  31. }
  32. respBuf, err := encoder.Marshal(resp)
  33. if err != nil {
  34. t.Fatalf("err")
  35. }
  36. fmt.Printf("%v", hex.Dump(respBuf))
  37. }
  38. func Test_path(t *testing.T) {
  39. tmpfile, err := ioutil.TempFile("", "xattr_Test")
  40. assert.Equal(t, nil, err)
  41. fmt.Printf("f name: %v", tmpfile.Name())
  42. fmt.Printf("f: %v", tmpfile)
  43. }