4 #include <libsmbclient.h>
6 #define MAX_BUFF_SIZE 255
7 char g_workgroup
[MAX_BUFF_SIZE
];
8 char g_username
[MAX_BUFF_SIZE
];
9 char g_password
[MAX_BUFF_SIZE
];
10 char g_server
[MAX_BUFF_SIZE
];
11 char g_share
[MAX_BUFF_SIZE
];
14 static void auth_fn(const char *server
, const char *share
, char *workgroup
, int wgmaxlen
,
15 char *username
, int unmaxlen
, char *password
, int pwmaxlen
)
18 strncpy(workgroup
, g_workgroup
, wgmaxlen
- 1);
20 strncpy(username
, g_username
, unmaxlen
- 1);
22 strncpy(password
, g_password
, pwmaxlen
- 1);
24 strcpy(g_server
, server
);
25 strcpy(g_share
, share
);
29 int main(int argc
, char** argv
)
33 char url
[MAX_BUFF_SIZE
];
35 memset(g_workgroup
, '\0', MAX_BUFF_SIZE
);
36 memset(url
, '\0', MAX_BUFF_SIZE
);
41 strncpy(g_workgroup
,argv
[1],strlen(argv
[1]));
42 strncpy(g_username
,argv
[2],strlen(argv
[2]));
43 strncpy(g_password
,argv
[3],strlen(argv
[3]));
44 strncpy(url
,argv
[4],strlen(argv
[4]));
46 smbc_init(auth_fn
, 0);
47 fd
= smbc_open(url
, O_RDWR
| O_CREAT
, 0666);