• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/samba-3.5.8/examples/libsmbclient/
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    printf("CAUTION: This program will overwrite a file.  "
29           "Press ENTER to continue.");
30    fgets(buffer, sizeof(buffer), stdin);
31
32
33    for (;;)
34    {
35        fprintf(stdout, "\nPath: ");
36        *path = '\0';
37        fgets(path, sizeof(path) - 1, stdin);
38        if (strlen(path) == 0)
39        {
40            return 0;
41        }
42
43        p = path + strlen(path) - 1;
44        if (*p == '\n')
45        {
46            *p = '\0';
47        }
48
49        if ((fd = smbc_open(path, O_WRONLY | O_CREAT | O_TRUNC, 0)) < 0)
50        {
51            perror("smbc_open");
52            continue;
53        }
54
55        strcpy(buffer, "Hello world\n");
56
57        ret = smbc_write(fd, buffer, strlen(buffer));
58        savedErrno = errno;
59        smbc_close(fd);
60
61        if (ret < 0)
62        {
63            errno = savedErrno;
64            perror("write");
65        }
66    }
67
68    return 0;
69}
70