source: branches/samba-3.5.x/examples/libsmbclient/testread.c

Last change on this file was 414, checked in by Herwig Bauernfeind, 15 years ago

Samba 3.5.0: Initial import

File size: 1.3 KB
Line 
1#include <sys/types.h>
2#include <stdio.h>
3#include <unistd.h>
4#include <string.h>
5#include <time.h>
6#include <errno.h>
7#include <libsmbclient.h>
8#include "get_auth_data_fn.h"
9
10
11int main(int argc, char * argv[])
12{
13 int i;
14 int fd;
15 int ret;
16 int debug = 0;
17 int mode = 0666;
18 int savedErrno;
19 char buffer[2048];
20 char path[2048];
21 char * p;
22 time_t t0;
23 time_t t1;
24 struct stat st;
25
26 smbc_init(get_auth_data_fn, debug);
27
28 for (;;)
29 {
30 fprintf(stdout, "Path: ");
31 *path = '\0';
32 fgets(path, sizeof(path) - 1, stdin);
33 if (strlen(path) == 0)
34 {
35 return 0;
36 }
37
38 p = path + strlen(path) - 1;
39 if (*p == '\n')
40 {
41 *p = '\0';
42 }
43
44 if ((fd = smbc_open(path, O_RDONLY, 0)) < 0)
45 {
46 perror("smbc_open");
47 continue;
48 }
49
50 do
51 {
52 ret = smbc_read(fd, buffer, sizeof(buffer));
53 savedErrno = errno;
54 if (ret > 0) fwrite(buffer, 1, ret, stdout);
55 } while (ret > 0);
56
57 smbc_close(fd);
58
59 if (ret < 0)
60 {
61 errno = savedErrno;
62 perror("read");
63 }
64 }
65
66 return 0;
67}
Note: See TracBrowser for help on using the repository browser.