It's 2013.
[usmb.git] / usmb.h
blob8adf483f4d6f259e65ec617886e8b0a0d9cfe8f6
1 /* usmb - mount SMB shares via FUSE and Samba
2 * Copyright (C) 2006-2009 Geoff Johnstone
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 3 as
6 * published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 #ifndef USMB_H
18 #define USMB_H
20 #include <stdbool.h>
21 #include <stdint.h>
22 #include <libsmbclient.h>
24 extern SMBCCTX *ctx;
26 char * make_url (const char *path) MUSTCHECK;
28 bool create_smb_context (SMBCCTX **pctx) MUSTCHECK;
29 void destroy_smb_context (SMBCCTX *ctx, int shutdown);
31 /* fuse_file_info uses a uint64_t for a "File handle" */
32 static inline uint64_t smbcfile_to_fd (SMBCFILE *file)
34 return (uint64_t)(uintptr_t)file;
38 static inline SMBCFILE * fd_to_smbcfile (uint64_t fd)
40 return (SMBCFILE *)(uintptr_t)fd;
43 #endif