--- a/core/utils.c
+++ b/core/utils.c
@@ -795,7 +795,7 @@
 			union semun {
 				int val;
 				struct semid_ds *buf;
-				ushort *array;
+				unsigned short *array;
 			} semu;
 
 			struct semid_ds sds;
@@ -2402,7 +2402,7 @@
 			return usl->value;
 		}
 	}
-	return "/bin/sh";
+	return "@TERMUX_PREFIX@/bin/sh";
 }
 
 void uwsgi_exec_command_with_args(char *cmdline) {
@@ -3556,7 +3559,7 @@
 	int fd = -1;
 	char *tmpdir = getenv("TMPDIR");
 	if (!tmpdir) {
-		tmpdir = "/tmp";
+		tmpdir = "@TERMUX_PREFIX@/tmp";
 	}
 #ifdef O_TMPFILE
 	fd = open(tmpdir, O_TMPFILE | O_RDWR, S_IRUSR | S_IWUSR);