200-disable_compat.patch 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613
  1. diff -Nru fuse-2.7.3.orig/include/fuse_common_compat.h fuse-2.7.3/include/fuse_common_compat.h
  2. --- fuse-2.7.3.orig/include/fuse_common_compat.h 2008-02-19 14:51:23.000000000 -0500
  3. +++ fuse-2.7.3/include/fuse_common_compat.h 2008-03-17 14:55:01.000000000 -0400
  4. @@ -17,6 +17,7 @@
  5. unsigned int keep_cache : 1;
  6. };
  7. +#ifndef DISABLE_COMPAT
  8. int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args);
  9. int fuse_mount_compat22(const char *mountpoint, const char *opts);
  10. @@ -24,3 +25,4 @@
  11. int fuse_mount_compat1(const char *mountpoint, const char *args[]);
  12. void fuse_unmount_compat22(const char *mountpoint);
  13. +#endif
  14. diff -Nru fuse-2.7.3.orig/lib/fuse.c fuse-2.7.3/lib/fuse.c
  15. --- fuse-2.7.3.orig/lib/fuse.c 2008-02-19 14:51:25.000000000 -0500
  16. +++ fuse-2.7.3/lib/fuse.c 2008-03-17 15:04:54.000000000 -0400
  17. @@ -14,8 +14,6 @@
  18. #include "fuse_lowlevel.h"
  19. #include "fuse_opt.h"
  20. #include "fuse_misc.h"
  21. -#include "fuse_common_compat.h"
  22. -#include "fuse_compat.h"
  23. #include <stdio.h>
  24. #include <string.h>
  25. @@ -626,129 +624,6 @@
  26. fuse_do_prepare_interrupt(req, d);
  27. }
  28. -#ifndef __FreeBSD__
  29. -
  30. -static int fuse_compat_open(struct fuse_fs *fs, const char *path,
  31. - struct fuse_file_info *fi)
  32. -{
  33. - int err;
  34. - if (!fs->compat || fs->compat >= 25)
  35. - err = fs->op.open(path, fi);
  36. - else if (fs->compat == 22) {
  37. - struct fuse_file_info_compat tmp;
  38. - memcpy(&tmp, fi, sizeof(tmp));
  39. - err = ((struct fuse_operations_compat22 *) &fs->op)->open(path,
  40. - &tmp);
  41. - memcpy(fi, &tmp, sizeof(tmp));
  42. - fi->fh = tmp.fh;
  43. - } else
  44. - err = ((struct fuse_operations_compat2 *) &fs->op)
  45. - ->open(path, fi->flags);
  46. - return err;
  47. -}
  48. -
  49. -static int fuse_compat_release(struct fuse_fs *fs, const char *path,
  50. - struct fuse_file_info *fi)
  51. -{
  52. - if (!fs->compat || fs->compat >= 22)
  53. - return fs->op.release(path, fi);
  54. - else
  55. - return ((struct fuse_operations_compat2 *) &fs->op)
  56. - ->release(path, fi->flags);
  57. -}
  58. -
  59. -static int fuse_compat_opendir(struct fuse_fs *fs, const char *path,
  60. - struct fuse_file_info *fi)
  61. -{
  62. - if (!fs->compat || fs->compat >= 25)
  63. - return fs->op.opendir(path, fi);
  64. - else {
  65. - int err;
  66. - struct fuse_file_info_compat tmp;
  67. - memcpy(&tmp, fi, sizeof(tmp));
  68. - err = ((struct fuse_operations_compat22 *) &fs->op)
  69. - ->opendir(path, &tmp);
  70. - memcpy(fi, &tmp, sizeof(tmp));
  71. - fi->fh = tmp.fh;
  72. - return err;
  73. - }
  74. -}
  75. -
  76. -static void convert_statfs_compat(struct fuse_statfs_compat1 *compatbuf,
  77. - struct statvfs *stbuf)
  78. -{
  79. - stbuf->f_bsize = compatbuf->block_size;
  80. - stbuf->f_blocks = compatbuf->blocks;
  81. - stbuf->f_bfree = compatbuf->blocks_free;
  82. - stbuf->f_bavail = compatbuf->blocks_free;
  83. - stbuf->f_files = compatbuf->files;
  84. - stbuf->f_ffree = compatbuf->files_free;
  85. - stbuf->f_namemax = compatbuf->namelen;
  86. -}
  87. -
  88. -static void convert_statfs_old(struct statfs *oldbuf, struct statvfs *stbuf)
  89. -{
  90. - stbuf->f_bsize = oldbuf->f_bsize;
  91. - stbuf->f_blocks = oldbuf->f_blocks;
  92. - stbuf->f_bfree = oldbuf->f_bfree;
  93. - stbuf->f_bavail = oldbuf->f_bavail;
  94. - stbuf->f_files = oldbuf->f_files;
  95. - stbuf->f_ffree = oldbuf->f_ffree;
  96. - stbuf->f_namemax = oldbuf->f_namelen;
  97. -}
  98. -
  99. -static int fuse_compat_statfs(struct fuse_fs *fs, const char *path,
  100. - struct statvfs *buf)
  101. -{
  102. - int err;
  103. -
  104. - if (!fs->compat || fs->compat >= 25) {
  105. - err = fs->op.statfs(fs->compat == 25 ? "/" : path, buf);
  106. - } else if (fs->compat > 11) {
  107. - struct statfs oldbuf;
  108. - err = ((struct fuse_operations_compat22 *) &fs->op)
  109. - ->statfs("/", &oldbuf);
  110. - if (!err)
  111. - convert_statfs_old(&oldbuf, buf);
  112. - } else {
  113. - struct fuse_statfs_compat1 compatbuf;
  114. - memset(&compatbuf, 0, sizeof(struct fuse_statfs_compat1));
  115. - err = ((struct fuse_operations_compat1 *) &fs->op)
  116. - ->statfs(&compatbuf);
  117. - if (!err)
  118. - convert_statfs_compat(&compatbuf, buf);
  119. - }
  120. - return err;
  121. -}
  122. -
  123. -#else /* __FreeBSD__ */
  124. -
  125. -static inline int fuse_compat_open(struct fuse_fs *fs, char *path,
  126. - struct fuse_file_info *fi)
  127. -{
  128. - return fs->op.open(path, fi);
  129. -}
  130. -
  131. -static inline int fuse_compat_release(struct fuse_fs *fs, const char *path,
  132. - struct fuse_file_info *fi)
  133. -{
  134. - return fs->op.release(path, fi);
  135. -}
  136. -
  137. -static inline int fuse_compat_opendir(struct fuse_fs *fs, const char *path,
  138. - struct fuse_file_info *fi)
  139. -{
  140. - return fs->op.opendir(path, fi);
  141. -}
  142. -
  143. -static inline int fuse_compat_statfs(struct fuse_fs *fs, const char *path,
  144. - struct statvfs *buf)
  145. -{
  146. - return fs->op.statfs(fs->compat == 25 ? "/" : path, buf);
  147. -}
  148. -
  149. -#endif /* __FreeBSD__ */
  150. -
  151. int fuse_fs_getattr(struct fuse_fs *fs, const char *path, struct stat *buf)
  152. {
  153. fuse_get_context()->private_data = fs->user_data;
  154. @@ -821,7 +696,7 @@
  155. {
  156. fuse_get_context()->private_data = fs->user_data;
  157. if (fs->op.release)
  158. - return fuse_compat_release(fs, path, fi);
  159. + return fs->op.release(path, fi);
  160. else
  161. return 0;
  162. }
  163. @@ -831,7 +706,7 @@
  164. {
  165. fuse_get_context()->private_data = fs->user_data;
  166. if (fs->op.opendir)
  167. - return fuse_compat_opendir(fs, path, fi);
  168. + return fs->op.opendir(path, fi);
  169. else
  170. return 0;
  171. }
  172. @@ -841,7 +716,7 @@
  173. {
  174. fuse_get_context()->private_data = fs->user_data;
  175. if (fs->op.open)
  176. - return fuse_compat_open(fs, path, fi);
  177. + return fs->op.open(path, fi);
  178. else
  179. return 0;
  180. }
  181. @@ -900,7 +775,7 @@
  182. {
  183. fuse_get_context()->private_data = fs->user_data;
  184. if (fs->op.statfs)
  185. - return fuse_compat_statfs(fs, path, buf);
  186. + return fs->op.statfs(path, buf);
  187. else {
  188. buf->f_namemax = 255;
  189. buf->f_bsize = 512;
  190. @@ -3070,7 +2945,6 @@
  191. if (!fs)
  192. goto out_free;
  193. - fs->compat = compat;
  194. f->fs = fs;
  195. /* Oh f**k, this is ugly! */
  196. @@ -3114,11 +2988,6 @@
  197. f->conf.readdir_ino = 1;
  198. #endif
  199. - if (compat && compat <= 25) {
  200. - if (fuse_sync_compat_args(args) == -1)
  201. - goto out_free_fs;
  202. - }
  203. -
  204. f->se = fuse_lowlevel_new_common(args, &llop, sizeof(llop), f);
  205. if (f->se == NULL) {
  206. if (f->conf.help)
  207. @@ -3254,19 +3123,6 @@
  208. fuse_delete_context_key();
  209. }
  210. -static struct fuse *fuse_new_common_compat25(int fd, struct fuse_args *args,
  211. - const struct fuse_operations *op,
  212. - size_t op_size, int compat)
  213. -{
  214. - struct fuse *f = NULL;
  215. - struct fuse_chan *ch = fuse_kern_chan_new(fd);
  216. -
  217. - if (ch)
  218. - f = fuse_new_common(ch, args, op, op_size, NULL, compat);
  219. -
  220. - return f;
  221. -}
  222. -
  223. /* called with fuse_context_lock held or during initialization (before
  224. main() has been called) */
  225. void fuse_register_module(struct fuse_module *mod)
  226. @@ -3278,72 +3134,3 @@
  227. mod->next = fuse_modules;
  228. fuse_modules = mod;
  229. }
  230. -
  231. -#ifndef __FreeBSD__
  232. -
  233. -static struct fuse *fuse_new_common_compat(int fd, const char *opts,
  234. - const struct fuse_operations *op,
  235. - size_t op_size, int compat)
  236. -{
  237. - struct fuse *f;
  238. - struct fuse_args args = FUSE_ARGS_INIT(0, NULL);
  239. -
  240. - if (fuse_opt_add_arg(&args, "") == -1)
  241. - return NULL;
  242. - if (opts &&
  243. - (fuse_opt_add_arg(&args, "-o") == -1 ||
  244. - fuse_opt_add_arg(&args, opts) == -1)) {
  245. - fuse_opt_free_args(&args);
  246. - return NULL;
  247. - }
  248. - f = fuse_new_common_compat25(fd, &args, op, op_size, compat);
  249. - fuse_opt_free_args(&args);
  250. -
  251. - return f;
  252. -}
  253. -
  254. -struct fuse *fuse_new_compat22(int fd, const char *opts,
  255. - const struct fuse_operations_compat22 *op,
  256. - size_t op_size)
  257. -{
  258. - return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
  259. - op_size, 22);
  260. -}
  261. -
  262. -struct fuse *fuse_new_compat2(int fd, const char *opts,
  263. - const struct fuse_operations_compat2 *op)
  264. -{
  265. - return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
  266. - sizeof(struct fuse_operations_compat2),
  267. - 21);
  268. -}
  269. -
  270. -struct fuse *fuse_new_compat1(int fd, int flags,
  271. - const struct fuse_operations_compat1 *op)
  272. -{
  273. - const char *opts = NULL;
  274. - if (flags & FUSE_DEBUG_COMPAT1)
  275. - opts = "debug";
  276. - return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
  277. - sizeof(struct fuse_operations_compat1),
  278. - 11);
  279. -}
  280. -
  281. -FUSE_SYMVER(".symver fuse_exited,__fuse_exited@");
  282. -FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@");
  283. -FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@");
  284. -FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@");
  285. -FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@");
  286. -FUSE_SYMVER(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
  287. -
  288. -#endif /* __FreeBSD__ */
  289. -
  290. -struct fuse *fuse_new_compat25(int fd, struct fuse_args *args,
  291. - const struct fuse_operations_compat25 *op,
  292. - size_t op_size)
  293. -{
  294. - return fuse_new_common_compat25(fd, args, (struct fuse_operations *) op,
  295. - op_size, 25);
  296. -}
  297. -
  298. -FUSE_SYMVER(".symver fuse_new_compat25,fuse_new@FUSE_2.5");
  299. diff -Nru fuse-2.7.3.orig/lib/fuse_lowlevel.c fuse-2.7.3/lib/fuse_lowlevel.c
  300. --- fuse-2.7.3.orig/lib/fuse_lowlevel.c 2008-02-19 14:51:26.000000000 -0500
  301. +++ fuse-2.7.3/lib/fuse_lowlevel.c 2008-03-17 15:07:40.000000000 -0400
  302. @@ -11,8 +11,6 @@
  303. #include "fuse_opt.h"
  304. #include "fuse_i.h"
  305. #include "fuse_misc.h"
  306. -#include "fuse_common_compat.h"
  307. -#include "fuse_lowlevel_compat.h"
  308. #include <stdio.h>
  309. #include <stdlib.h>
  310. @@ -1319,130 +1317,3 @@
  311. {
  312. return fuse_lowlevel_new_common(args, op, op_size, userdata);
  313. }
  314. -
  315. -
  316. -#ifndef __FreeBSD__
  317. -
  318. -static void fill_open_compat(struct fuse_open_out *arg,
  319. - const struct fuse_file_info_compat *f)
  320. -{
  321. - arg->fh = f->fh;
  322. - if (f->direct_io)
  323. - arg->open_flags |= FOPEN_DIRECT_IO;
  324. - if (f->keep_cache)
  325. - arg->open_flags |= FOPEN_KEEP_CACHE;
  326. -}
  327. -
  328. -static void convert_statfs_compat(const struct statfs *compatbuf,
  329. - struct statvfs *buf)
  330. -{
  331. - buf->f_bsize = compatbuf->f_bsize;
  332. - buf->f_blocks = compatbuf->f_blocks;
  333. - buf->f_bfree = compatbuf->f_bfree;
  334. - buf->f_bavail = compatbuf->f_bavail;
  335. - buf->f_files = compatbuf->f_files;
  336. - buf->f_ffree = compatbuf->f_ffree;
  337. - buf->f_namemax = compatbuf->f_namelen;
  338. -}
  339. -
  340. -int fuse_reply_open_compat(fuse_req_t req,
  341. - const struct fuse_file_info_compat *f)
  342. -{
  343. - struct fuse_open_out arg;
  344. -
  345. - memset(&arg, 0, sizeof(arg));
  346. - fill_open_compat(&arg, f);
  347. - return send_reply_ok(req, &arg, sizeof(arg));
  348. -}
  349. -
  350. -int fuse_reply_statfs_compat(fuse_req_t req, const struct statfs *stbuf)
  351. -{
  352. - struct statvfs newbuf;
  353. -
  354. - memset(&newbuf, 0, sizeof(newbuf));
  355. - convert_statfs_compat(stbuf, &newbuf);
  356. -
  357. - return fuse_reply_statfs(req, &newbuf);
  358. -}
  359. -
  360. -struct fuse_session *fuse_lowlevel_new_compat(const char *opts,
  361. - const struct fuse_lowlevel_ops_compat *op,
  362. - size_t op_size, void *userdata)
  363. -{
  364. - struct fuse_session *se;
  365. - struct fuse_args args = FUSE_ARGS_INIT(0, NULL);
  366. -
  367. - if (opts &&
  368. - (fuse_opt_add_arg(&args, "") == -1 ||
  369. - fuse_opt_add_arg(&args, "-o") == -1 ||
  370. - fuse_opt_add_arg(&args, opts) == -1)) {
  371. - fuse_opt_free_args(&args);
  372. - return NULL;
  373. - }
  374. - se = fuse_lowlevel_new(&args, (const struct fuse_lowlevel_ops *) op,
  375. - op_size, userdata);
  376. - fuse_opt_free_args(&args);
  377. -
  378. - return se;
  379. -}
  380. -
  381. -struct fuse_ll_compat_conf {
  382. - unsigned max_read;
  383. - int set_max_read;
  384. -};
  385. -
  386. -static const struct fuse_opt fuse_ll_opts_compat[] = {
  387. - { "max_read=", offsetof(struct fuse_ll_compat_conf, set_max_read), 1 },
  388. - { "max_read=%u", offsetof(struct fuse_ll_compat_conf, max_read), 0 },
  389. - FUSE_OPT_KEY("max_read=", FUSE_OPT_KEY_KEEP),
  390. - FUSE_OPT_END
  391. -};
  392. -
  393. -int fuse_sync_compat_args(struct fuse_args *args)
  394. -{
  395. - struct fuse_ll_compat_conf conf;
  396. -
  397. - memset(&conf, 0, sizeof(conf));
  398. - if (fuse_opt_parse(args, &conf, fuse_ll_opts_compat, NULL) == -1)
  399. - return -1;
  400. -
  401. - if (fuse_opt_insert_arg(args, 1, "-osync_read"))
  402. - return -1;
  403. -
  404. - if (conf.set_max_read) {
  405. - char tmpbuf[64];
  406. -
  407. - sprintf(tmpbuf, "-omax_readahead=%u", conf.max_read);
  408. - if (fuse_opt_insert_arg(args, 1, tmpbuf) == -1)
  409. - return -1;
  410. - }
  411. - return 0;
  412. -}
  413. -
  414. -FUSE_SYMVER(".symver fuse_reply_statfs_compat,fuse_reply_statfs@FUSE_2.4");
  415. -FUSE_SYMVER(".symver fuse_reply_open_compat,fuse_reply_open@FUSE_2.4");
  416. -FUSE_SYMVER(".symver fuse_lowlevel_new_compat,fuse_lowlevel_new@FUSE_2.4");
  417. -
  418. -#else /* __FreeBSD__ */
  419. -
  420. -int fuse_sync_compat_args(struct fuse_args *args)
  421. -{
  422. - (void) args;
  423. - return 0;
  424. -}
  425. -
  426. -#endif /* __FreeBSD__ */
  427. -
  428. -struct fuse_session *fuse_lowlevel_new_compat25(struct fuse_args *args,
  429. - const struct fuse_lowlevel_ops_compat25 *op,
  430. - size_t op_size, void *userdata)
  431. -{
  432. - if (fuse_sync_compat_args(args) == -1)
  433. - return NULL;
  434. -
  435. - return fuse_lowlevel_new_common(args,
  436. - (const struct fuse_lowlevel_ops *) op,
  437. - op_size, userdata);
  438. -}
  439. -
  440. -FUSE_SYMVER(".symver fuse_lowlevel_new_compat25,fuse_lowlevel_new@FUSE_2.5");
  441. diff -Nru fuse-2.7.3.orig/lib/helper.c fuse-2.7.3/lib/helper.c
  442. --- fuse-2.7.3.orig/lib/helper.c 2008-02-19 14:51:27.000000000 -0500
  443. +++ fuse-2.7.3/lib/helper.c 2008-03-17 15:10:18.000000000 -0400
  444. @@ -11,7 +11,6 @@
  445. #include "fuse_misc.h"
  446. #include "fuse_opt.h"
  447. #include "fuse_lowlevel.h"
  448. -#include "fuse_common_compat.h"
  449. #include <stdio.h>
  450. #include <stdlib.h>
  451. @@ -206,7 +205,7 @@
  452. close(fd);
  453. } while (fd >= 0 && fd <= 2);
  454. - fd = fuse_mount_compat25(mountpoint, args);
  455. + fd = fuse_kern_mount(mountpoint, args);
  456. if (fd == -1)
  457. return NULL;
  458. @@ -353,100 +352,3 @@
  459. {
  460. return FUSE_VERSION;
  461. }
  462. -
  463. -#include "fuse_compat.h"
  464. -
  465. -#ifndef __FreeBSD__
  466. -
  467. -struct fuse *fuse_setup_compat22(int argc, char *argv[],
  468. - const struct fuse_operations_compat22 *op,
  469. - size_t op_size, char **mountpoint,
  470. - int *multithreaded, int *fd)
  471. -{
  472. - return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
  473. - op_size, mountpoint, multithreaded, fd, NULL,
  474. - 22);
  475. -}
  476. -
  477. -struct fuse *fuse_setup_compat2(int argc, char *argv[],
  478. - const struct fuse_operations_compat2 *op,
  479. - char **mountpoint, int *multithreaded,
  480. - int *fd)
  481. -{
  482. - return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
  483. - sizeof(struct fuse_operations_compat2),
  484. - mountpoint, multithreaded, fd, NULL, 21);
  485. -}
  486. -
  487. -int fuse_main_real_compat22(int argc, char *argv[],
  488. - const struct fuse_operations_compat22 *op,
  489. - size_t op_size)
  490. -{
  491. - return fuse_main_common(argc, argv, (struct fuse_operations *) op,
  492. - op_size, NULL, 22);
  493. -}
  494. -
  495. -void fuse_main_compat1(int argc, char *argv[],
  496. - const struct fuse_operations_compat1 *op)
  497. -{
  498. - fuse_main_common(argc, argv, (struct fuse_operations *) op,
  499. - sizeof(struct fuse_operations_compat1), NULL, 11);
  500. -}
  501. -
  502. -int fuse_main_compat2(int argc, char *argv[],
  503. - const struct fuse_operations_compat2 *op)
  504. -{
  505. - return fuse_main_common(argc, argv, (struct fuse_operations *) op,
  506. - sizeof(struct fuse_operations_compat2), NULL,
  507. - 21);
  508. -}
  509. -
  510. -int fuse_mount_compat1(const char *mountpoint, const char *args[])
  511. -{
  512. - /* just ignore mount args for now */
  513. - (void) args;
  514. - return fuse_mount_compat22(mountpoint, NULL);
  515. -}
  516. -
  517. -FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@");
  518. -FUSE_SYMVER(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
  519. -FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@");
  520. -FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@");
  521. -FUSE_SYMVER(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
  522. -
  523. -#endif /* __FreeBSD__ */
  524. -
  525. -
  526. -struct fuse *fuse_setup_compat25(int argc, char *argv[],
  527. - const struct fuse_operations_compat25 *op,
  528. - size_t op_size, char **mountpoint,
  529. - int *multithreaded, int *fd)
  530. -{
  531. - return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
  532. - op_size, mountpoint, multithreaded, fd, NULL,
  533. - 25);
  534. -}
  535. -
  536. -int fuse_main_real_compat25(int argc, char *argv[],
  537. - const struct fuse_operations_compat25 *op,
  538. - size_t op_size)
  539. -{
  540. - return fuse_main_common(argc, argv, (struct fuse_operations *) op,
  541. - op_size, NULL, 25);
  542. -}
  543. -
  544. -void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint)
  545. -{
  546. - (void) fd;
  547. - fuse_teardown_common(fuse, mountpoint);
  548. -}
  549. -
  550. -int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args)
  551. -{
  552. - return fuse_kern_mount(mountpoint, args);
  553. -}
  554. -
  555. -FUSE_SYMVER(".symver fuse_setup_compat25,fuse_setup@FUSE_2.5");
  556. -FUSE_SYMVER(".symver fuse_teardown_compat22,fuse_teardown@FUSE_2.2");
  557. -FUSE_SYMVER(".symver fuse_main_real_compat25,fuse_main_real@FUSE_2.5");
  558. -FUSE_SYMVER(".symver fuse_mount_compat25,fuse_mount@FUSE_2.5");
  559. diff -Nru fuse-2.7.3.orig/lib/mount.c fuse-2.7.3/lib/mount.c
  560. --- fuse-2.7.3.orig/lib/mount.c 2008-02-19 14:51:27.000000000 -0500
  561. +++ fuse-2.7.3/lib/mount.c 2008-03-17 15:11:02.000000000 -0400
  562. @@ -10,7 +10,6 @@
  563. #include "fuse_i.h"
  564. #include "fuse_misc.h"
  565. #include "fuse_opt.h"
  566. -#include "fuse_common_compat.h"
  567. #include "mount_util.h"
  568. #include <stdio.h>
  569. @@ -312,11 +311,6 @@
  570. waitpid(pid, NULL, 0);
  571. }
  572. -void fuse_unmount_compat22(const char *mountpoint)
  573. -{
  574. - fuse_kern_unmount(mountpoint, -1);
  575. -}
  576. -
  577. static int fuse_mount_fusermount(const char *mountpoint, const char *opts,
  578. int quiet)
  579. {
  580. @@ -380,11 +374,6 @@
  581. return rv;
  582. }
  583. -int fuse_mount_compat22(const char *mountpoint, const char *opts)
  584. -{
  585. - return fuse_mount_fusermount(mountpoint, opts, 0);
  586. -}
  587. -
  588. static int fuse_mount_sys(const char *mnt, struct mount_opts *mo,
  589. const char *mnt_opts)
  590. {
  591. @@ -587,6 +576,3 @@
  592. free(mo.mtab_opts);
  593. return res;
  594. }
  595. -
  596. -FUSE_SYMVER(".symver fuse_mount_compat22,fuse_mount@FUSE_2.2");
  597. -FUSE_SYMVER(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");