aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/blogc-git-receiver/shell-command-parser.c25
-rw-r--r--src/blogc-git-receiver/shell-command-parser.h1
-rw-r--r--src/blogc-git-receiver/shell.c2
-rw-r--r--src/common/utils.c24
-rw-r--r--src/common/utils.h5
5 files changed, 30 insertions, 27 deletions
diff --git a/src/blogc-git-receiver/shell-command-parser.c b/src/blogc-git-receiver/shell-command-parser.c
index 0c867b8..4cfdec8 100644
--- a/src/blogc-git-receiver/shell-command-parser.c
+++ b/src/blogc-git-receiver/shell-command-parser.c
@@ -99,28 +99,3 @@ error:
bc_string_free(rv, true);
return NULL;
}
-
-
-char*
-bgr_shell_quote(const char *command)
-{
- // this does not really belongs here, but function is very small
- bc_string_t *rv = bc_string_new();
- bc_string_append_c(rv, '\'');
- if (command != NULL) {
- for (size_t i = 0; i < strlen(command); i++) {
- switch (command[i]) {
- case '!':
- bc_string_append(rv, "'\\!'");
- break;
- case '\'':
- bc_string_append(rv, "'\\''");
- break;
- default:
- bc_string_append_c(rv, command[i]);
- }
- }
- }
- bc_string_append_c(rv, '\'');
- return bc_string_free(rv, false);
-}
diff --git a/src/blogc-git-receiver/shell-command-parser.h b/src/blogc-git-receiver/shell-command-parser.h
index 47054cb..652d671 100644
--- a/src/blogc-git-receiver/shell-command-parser.h
+++ b/src/blogc-git-receiver/shell-command-parser.h
@@ -10,6 +10,5 @@
#define _SHELL_COMMAND_PARSER_H
char* bgr_shell_command_parse(const char *command);
-char* bgr_shell_quote(const char *command);
#endif /* _SHELL_COMMAND_PARSER_H */
diff --git a/src/blogc-git-receiver/shell.c b/src/blogc-git-receiver/shell.c
index d83174f..a21c5bd 100644
--- a/src/blogc-git-receiver/shell.c
+++ b/src/blogc-git-receiver/shell.c
@@ -51,7 +51,7 @@ bgr_shell(int argc, char *argv[])
}
repo = bc_strdup_printf("%s/repos/%s", home, tmp_repo);
- quoted_repo = bgr_shell_quote(repo);
+ quoted_repo = bc_shell_quote(repo);
free(tmp_repo);
if (0 == strncmp(argv[2], "git-upload-", 11)) // no need to check len here
diff --git a/src/common/utils.c b/src/common/utils.c
index f745146..9061e40 100644
--- a/src/common/utils.c
+++ b/src/common/utils.c
@@ -643,3 +643,27 @@ bc_trie_foreach(bc_trie_t *trie, bc_trie_foreach_func_t func,
bc_trie_foreach_node(trie->root, str, func, user_data);
bc_string_free(str, true);
}
+
+
+char*
+bc_shell_quote(const char *command)
+{
+ bc_string_t *rv = bc_string_new();
+ bc_string_append_c(rv, '\'');
+ if (command != NULL) {
+ for (size_t i = 0; i < strlen(command); i++) {
+ switch (command[i]) {
+ case '!':
+ bc_string_append(rv, "'\\!'");
+ break;
+ case '\'':
+ bc_string_append(rv, "'\\''");
+ break;
+ default:
+ bc_string_append_c(rv, command[i]);
+ }
+ }
+ }
+ bc_string_append_c(rv, '\'');
+ return bc_string_free(rv, false);
+}
diff --git a/src/common/utils.h b/src/common/utils.h
index 020f243..2bda45d 100644
--- a/src/common/utils.h
+++ b/src/common/utils.h
@@ -99,4 +99,9 @@ size_t bc_trie_size(bc_trie_t *trie);
void bc_trie_foreach(bc_trie_t *trie, bc_trie_foreach_func_t func,
void *user_data);
+
+// shell
+
+char* bc_shell_quote(const char *command);
+
#endif /* _UTILS_H */