example1.c 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include <arpa/inet.h>
  2. #include <stdio.h>
  3. #include <bdsm/bdsm.h>
  4. int main()
  5. {
  6. struct in_addr addr;
  7. smb_session *session;
  8. smb_tid tid;
  9. smb_fd fd;
  10. int result;
  11. session = smb_session_new();
  12. if (session == NULL)
  13. exit(1);
  14. inet_aton("127.0.0.1", &addr);
  15. if (smb_session_connect(session, "EXAMPLE-PC",
  16. addr.s_addr, SMB_TRANSPORT_TCP))
  17. {
  18. printf("Unable to connect to host\n");
  19. exit(2);
  20. }
  21. smb_session_set_creds(session, "EXAMPLE-PC", "EXAMPLE-USER",
  22. "EXAMPLE-PASSWORD");
  23. result = smb_session_login(session);
  24. if (result == 0)
  25. {
  26. if (smb_session_is_guest(session))
  27. printf("Logged in as GUEST \n");
  28. else
  29. printf("Successfully logged in\n");
  30. }
  31. else
  32. {
  33. printf("Auth failed\n");
  34. exit(3);
  35. }
  36. result = smb_tree_connect(session, "sharedfolder", &tid);
  37. if (!tid || result != 0)
  38. {
  39. printf("Unable to connect to share\n");
  40. exit(4);
  41. }
  42. result = smb_fopen(session, tid, "\\helloworld.txt",
  43. SMB_MOD_READ, &fd);
  44. if (!fd || result != 0)
  45. {
  46. printf("Unable to open file\n");
  47. exit(5);
  48. }
  49. char buffer[12];
  50. smb_fread(session, fd, buffer, 12);
  51. printf("%s\n" ,buffer);
  52. smb_fclose(session, fd);
  53. smb_tree_disconnect(session, tid);
  54. smb_session_destroy(session);
  55. return(0);
  56. }