summaryrefslogtreecommitdiff
path: root/pkg/sshfs/patch/0005-Use-standard-C-functions.patch
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 16:04:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-13 23:10:30 -0800
commit293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch)
tree6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/sshfs/patch/0005-Use-standard-C-functions.patch
parent9a506a6834df01a26795cea222b410f206efa9fa (diff)
Move to flat package hierarchy
Note to self: never try to move submodules again To migrate your existing submodules (more or less): set -x set -e mkdir .git/modules/pkg for old in */*/src ; do new="pkg/${old#*/}" if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then continue fi git -C ".git/modules/$old" config core.worktree "../../../../../$new" rmdir "$new" mv "$old" "$new" sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp" mv "$new/.git.tmp" "$new/.git" mkdir ".git/modules/${new%/src}" mv ".git/modules/$old" ".git/modules/$new" rm "${old%/src}"/*.ninja mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/" rmdir "${old%/src}" || true done sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/sshfs/patch/0005-Use-standard-C-functions.patch')
-rw-r--r--pkg/sshfs/patch/0005-Use-standard-C-functions.patch277
1 files changed, 277 insertions, 0 deletions
diff --git a/pkg/sshfs/patch/0005-Use-standard-C-functions.patch b/pkg/sshfs/patch/0005-Use-standard-C-functions.patch
new file mode 100644
index 00000000..e58cc29a
--- /dev/null
+++ b/pkg/sshfs/patch/0005-Use-standard-C-functions.patch
@@ -0,0 +1,277 @@
+From 4714c177e2fde09cfa76609ccaf9c72d62f39bfd Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Sun, 5 Jun 2016 17:42:29 -0700
+Subject: [PATCH] Use standard C functions
+
+---
+ sshfs.c | 101 ++++++++++++++++++++++++++++++++++++++--------------------------
+ 1 file changed, 60 insertions(+), 41 deletions(-)
+
+diff --git a/sshfs.c b/sshfs.c
+index 14adca5..4f3bfe4 100644
+--- a/sshfs.c
++++ b/sshfs.c
+@@ -637,25 +637,25 @@ static inline void buf_add_path(struct buffer *buf, const char *path)
+ if (sshfs.base_path[0]) {
+ if (path[1]) {
+ if (sshfs.base_path[strlen(sshfs.base_path)-1] != '/') {
+- realpath = g_strdup_printf("%s/%s",
+- sshfs.base_path,
+- path + 1);
++ if (asprintf(&realpath, "%s/%s", sshfs.base_path, path + 1) < 0)
++ abort();
+ } else {
+- realpath = g_strdup_printf("%s%s",
+- sshfs.base_path,
+- path + 1);
++ if (asprintf(&realpath, "%s%s", sshfs.base_path, path + 1) < 0)
++ abort();
+ }
+ } else {
+- realpath = g_strdup(sshfs.base_path);
++ realpath = strdup(sshfs.base_path);
+ }
+ } else {
+ if (path[1])
+- realpath = g_strdup(path + 1);
++ realpath = strdup(path + 1);
+ else
+- realpath = g_strdup(".");
++ realpath = strdup(".");
+ }
++ if (!realpath)
++ abort();
+ buf_add_string(buf, realpath);
+- g_free(realpath);
++ free(realpath);
+ }
+
+ static int buf_check_get(struct buffer *buf, size_t len)
+@@ -948,10 +948,9 @@ nobundle:
+ pathok:
+ #endif
+
+- newpreload = g_strdup_printf("%s%s%s",
+- oldpreload ? oldpreload : "",
+- oldpreload ? " " : "",
+- sopath);
++ if (asprintf(&newpreload, "%s%s%s",
++ oldpreload ? oldpreload : "", oldpreload ? " " : "", sopath) < 0)
++ abort();
+
+ #ifdef __APPLE__
+ if (!newpreload || setenv("DYLD_INSERT_LIBRARIES", newpreload, 1) == -1)
+@@ -962,7 +961,7 @@ pathok:
+ "for ssh nodelay workaround\n");
+ }
+ #endif /* __APPLE__ */
+- g_free(newpreload);
++ free(newpreload);
+ return 0;
+ }
+ #endif
+@@ -1342,7 +1341,7 @@ static void request_free(struct request *req)
+ {
+ buf_free(&req->reply);
+ sem_destroy(&req->ready);
+- g_free(req);
++ free(req);
+ }
+
+ static int request_table_insert(struct request_table *reqtab, struct request *req)
+@@ -1390,9 +1389,9 @@ static void chunk_free(struct read_chunk *chunk)
+ rreq = list_entry(chunk->reqs.prev, struct read_req, list);
+ list_del(&rreq->list);
+ buf_free(&rreq->data);
+- g_free(rreq);
++ free(rreq);
+ }
+- g_free(chunk);
++ free(chunk);
+ }
+
+ static void chunk_put(struct read_chunk *chunk)
+@@ -1944,8 +1943,10 @@ static int sftp_request_send(uint8_t type, struct iovec *iov, size_t count,
+ struct request **reqp)
+ {
+ int err;
+- struct request *req = g_new0(struct request, 1);
++ struct request *req = calloc(1, sizeof(struct request));
+
++ if (!req)
++ return -ENOMEM;
+ req->want_reply = want_reply;
+ req->end_func = end_func;
+ req->data = data;
+@@ -2586,7 +2587,9 @@ static int sshfs_open_common(const char *path, mode_t mode,
+ if (fi->flags & O_TRUNC)
+ pflags |= SSH_FXF_TRUNC;
+
+- sf = g_new0(struct sshfs_file, 1);
++ sf = calloc(1, sizeof(struct sshfs_file));
++ if (!sf)
++ return -ENOMEM;
+ list_init(&sf->write_reqs);
+ pthread_cond_init(&sf->write_finished, NULL);
+ /* Assume random read after open */
+@@ -2628,7 +2631,7 @@ static int sshfs_open_common(const char *path, mode_t mode,
+ fi->fh = (unsigned long) sf;
+ } else {
+ cache_invalidate(path);
+- g_free(sf);
++ free(sf);
+ }
+ buf_free(&buf);
+ return err;
+@@ -2701,7 +2704,7 @@ static void sshfs_file_put(struct sshfs_file *sf)
+ {
+ sf->refs--;
+ if (!sf->refs)
+- g_free(sf);
++ free(sf);
+ }
+
+ static void sshfs_file_get(struct sshfs_file *sf)
+@@ -2771,9 +2774,11 @@ static void sshfs_read_begin(struct request *req)
+ static struct read_chunk *sshfs_send_read(struct sshfs_file *sf, size_t size,
+ off_t offset)
+ {
+- struct read_chunk *chunk = g_new0(struct read_chunk, 1);
++ struct read_chunk *chunk = calloc(1, sizeof(struct read_chunk));
+ struct buffer *handle = &sf->handle;
+
++ if (!chunk)
++ abort();
+ pthread_cond_init(&chunk->sio.finished, NULL);
+ list_init(&chunk->reqs);
+ chunk->size = size;
+@@ -2787,7 +2792,9 @@ static struct read_chunk *sshfs_send_read(struct sshfs_file *sf, size_t size,
+ struct read_req *rreq;
+ size_t bsize = size < sshfs.max_read ? size : sshfs.max_read;
+
+- rreq = g_new0(struct read_req, 1);
++ rreq = calloc(1, sizeof(struct read_req));
++ if (!rreq)
++ abort();
+ rreq->sio = &chunk->sio;
+ rreq->size = bsize;
+ buf_init(&rreq->data, 0);
+@@ -2858,7 +2865,7 @@ static int wait_chunk(struct read_chunk *chunk, char *buf, size_t size)
+ size -= rreq->res;
+ list_del(&rreq->list);
+ buf_free(&rreq->data);
+- g_free(rreq);
++ free(rreq);
+ }
+ }
+
+@@ -3513,9 +3520,10 @@ static int sshfs_opt_proc(void *data, const char *arg, int key,
+ switch (key) {
+ case FUSE_OPT_KEY_OPT:
+ if (is_ssh_opt(arg)) {
+- tmp = g_strdup_printf("-o%s", arg);
++ if (asprintf(&tmp, "-o%s", arg) < 0)
++ abort();
+ ssh_add_arg(tmp);
+- g_free(tmp);
++ free(tmp);
+ return 0;
+ }
+ return 1;
+@@ -3528,9 +3536,10 @@ static int sshfs_opt_proc(void *data, const char *arg, int key,
+ return 1;
+
+ case KEY_PORT:
+- tmp = g_strdup_printf("-oPort=%s", arg + 2);
++ if (asprintf(&tmp, "-oPort=%s", arg + 2) < 0)
++ abort();
+ ssh_add_arg(tmp);
+- g_free(tmp);
++ free(tmp);
+ return 0;
+
+ case KEY_COMPRESS:
+@@ -3538,9 +3547,10 @@ static int sshfs_opt_proc(void *data, const char *arg, int key,
+ return 0;
+
+ case KEY_CONFIGFILE:
+- tmp = g_strdup_printf("-F%s", arg + 2);
++ if (asprintf(&tmp, "-F%s", arg + 2) < 0)
++ abort();
+ ssh_add_arg(tmp);
+- g_free(tmp);
++ free(tmp);
+ return 0;
+
+ case KEY_HELP:
+@@ -3755,17 +3765,19 @@ static void fsname_remove_commas(char *fsname)
+ #if FUSE_VERSION >= 27
+ static char *fsname_escape_commas(char *fsnameold)
+ {
+- char *fsname = g_malloc(strlen(fsnameold) * 2 + 1);
++ char *fsname = malloc(strlen(fsnameold) * 2 + 1);
+ char *d = fsname;
+ char *s;
+
++ if (!fsname)
++ abort();
+ for (s = fsnameold; *s; s++) {
+ if (*s == '\\' || *s == ',')
+ *d++ = '\\';
+ *d++ = *s;
+ }
+ *d = '\0';
+- g_free(fsnameold);
++ free(fsnameold);
+
+ return fsname;
+ }
+@@ -4081,15 +4093,20 @@ int main(int argc, char *argv[])
+ exit(1);
+ }
+
+- fsname = g_strdup(sshfs.host);
+- sshfs.base_path = g_strdup(find_base_path());
++ fsname = strdup(sshfs.host);
++ if (!fsname)
++ abort();
++ sshfs.base_path = strdup(find_base_path());
++ if (!sshfs.base_path)
++ abort();
+
+ if (sshfs.ssh_command)
+ set_ssh_command();
+
+- tmp = g_strdup_printf("-%i", sshfs.ssh_ver);
++ if (asprintf(&tmp, "-%i", sshfs.ssh_ver) < 0)
++ abort();
+ ssh_add_arg(tmp);
+- g_free(tmp);
++ free(tmp);
+ ssh_add_arg(sshfs.host);
+ if (sshfs.sftp_server)
+ sftp_server = sshfs.sftp_server;
+@@ -4125,14 +4142,16 @@ int main(int argc, char *argv[])
+ fsname = fsname_escape_commas(fsname);
+ else
+ fsname_remove_commas(fsname);
+- tmp = g_strdup_printf("-osubtype=sshfs,fsname=%s", fsname);
++ if (asprintf(&tmp, "-osubtype=sshfs,fsname=%s", fsname) < 0)
++ abort();
+ #else
+ fsname_remove_commas(fsname);
+- tmp = g_strdup_printf("-ofsname=sshfs#%s", fsname);
++ if (asprintf(&tmp, "-ofsname=sshfs#%s", fsname) < 0)
++ abort();
+ #endif
+ fuse_opt_insert_arg(&args, 1, tmp);
+- g_free(tmp);
+- g_free(fsname);
++ free(tmp);
++ free(fsname);
+ check_large_read(&args);
+
+ #if FUSE_VERSION >= 26
+--
+2.9.0
+