aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2024-11-12 00:59:08 -0500
committerJoseph Hunkeler <jhunkeler@gmail.com>2024-11-12 00:59:08 -0500
commit5a8efc84f7a3c2264926b393aafd5585deaa7195 (patch)
tree7055bde796e3b965368d638c6791ce9e37748449 /include
parent6fe076163eaacac892efd83f9ffe967d2d0e8f52 (diff)
downloadstasis-5a8efc84f7a3c2264926b393aafd5585deaa7195.tar.gz
Add path_manip function
Diffstat (limited to 'include')
-rw-r--r--include/utils.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/utils.h b/include/utils.h
index 4ade817..2756347 100644
--- a/include/utils.h
+++ b/include/utils.h
@@ -30,6 +30,10 @@
#define STASIS_XML_PRETTY_PRINT_PROG "xmllint"
#define STASIS_XML_PRETTY_PRINT_ARGS "--format"
+#define PM_APPEND 1 << 0
+#define PM_PREPEND 1 << 1
+#define PM_ONCE 1 << 2
+
/**
* Change directory. Push path on directory stack.
*
@@ -392,4 +396,13 @@ int mkdirs(const char *_path, mode_t mode);
*/
char *find_version_spec(char *package_name);
+/**
+* Manipulate the PATH environment variable
+* @param path to insert (does not need to exist)
+* @param mode PM_APPEND `$path:$PATH`
+* @param mode PM_PREPEND `$PATH:path`
+* @param mode PM_ONCE do not manipulate if `path` is present in PATH variable
+*/
+int path_manip(char *path, int mode);
+
#endif //STASIS_UTILS_H