Index: uspace/app/bdsh/exec.c
===================================================================
--- uspace/app/bdsh/exec.c	(revision 69145dae045b049d3f508dcd8da43aafe18f8710)
+++ uspace/app/bdsh/exec.c	(revision 88944695970ebfd82dce23b26a27ded9fda43fca)
@@ -49,6 +49,9 @@
 char *found;
 
+static char *find_command(char *);
+static unsigned int try_access(const char *);
+
 /* work-around for access() */
-unsigned int try_access(const char *f)
+static unsigned int try_access(const char *f)
 {
 	int fd;
@@ -64,5 +67,5 @@
 /* Returns the full path of "cmd" if cmd is found, else just hand back
  * cmd as it was presented */
-char *find_command(char *cmd)
+static char *find_command(char *cmd)
 {
 	char *path_tok;
Index: uspace/app/bdsh/exec.h
===================================================================
--- uspace/app/bdsh/exec.h	(revision 69145dae045b049d3f508dcd8da43aafe18f8710)
+++ uspace/app/bdsh/exec.h	(revision 88944695970ebfd82dce23b26a27ded9fda43fca)
@@ -4,7 +4,4 @@
 #include <task.h>
 
-extern char *find_command(char *);
 extern unsigned int try_exec(char *, char **);
-extern unsigned int try_access(const char *);
-
 #endif
Index: uspace/app/bdsh/input.c
===================================================================
--- uspace/app/bdsh/input.c	(revision 69145dae045b049d3f508dcd8da43aafe18f8710)
+++ uspace/app/bdsh/input.c	(revision 88944695970ebfd82dce23b26a27ded9fda43fca)
@@ -44,6 +44,10 @@
 extern volatile unsigned int cli_interactive;
 
+/* Not exposed in input.h */
+static void cli_restricted(char *);
+static void read_line(char *, int);
+
 /* More than a macro than anything */
-void cli_restricted(char *cmd)
+static void cli_restricted(char *cmd)
 {
 	printf("%s is not available in %s mode\n", cmd,
@@ -82,15 +86,20 @@
 	}
 
-	/* Check what kind of command argv[0] might be, TODO: move this to
-	 * a function */
+	/* Its a builtin command */
 	if ((i = (is_builtin(cmd[0]))) > -1) {
+		/* Its not available in this mode, see what try_exec() thinks */
 		if (builtin_is_restricted(i)) {
 				rc = try_exec(cmd[0], cmd);
 				if (rc)
+					/* No external matching it could be found, tell the
+					 * user that the command does exist, but is not
+					 * available in this mode. */
 					cli_restricted(cmd[0]);
 				goto finit;
 		}
+		/* Its a builtin, its available, run it */
 		rc = run_builtin(i, cmd, usr);
 		goto finit;
+	/* We repeat the same dance for modules */
 	} else if ((i = (is_module(cmd[0]))) > -1) {
 		if (module_is_restricted(i)) {
@@ -103,4 +112,7 @@
 		goto finit;
 	} else {
+		/* Its not a module or builtin, restricted or otherwise.
+		 * See what try_exec() thinks of it and just pass its return
+		 * value back to the caller */
 		rc = try_exec(cmd[0], cmd);
 		goto finit;
@@ -119,5 +131,5 @@
 
 /* Borrowed from Jiri Svoboda's 'cli' uspace app */
-void read_line(char *buffer, int n)
+static void read_line(char *buffer, int n)
 {
 	char c;
@@ -145,4 +157,7 @@
 }
 
+/* TODO:
+ * Implement something like editline() / readline(), if even
+ * just for command history and making arrows work. */
 void get_input(cliuser_t *usr)
 {
Index: uspace/app/bdsh/input.h
===================================================================
--- uspace/app/bdsh/input.h	(revision 69145dae045b049d3f508dcd8da43aafe18f8710)
+++ uspace/app/bdsh/input.h	(revision 88944695970ebfd82dce23b26a27ded9fda43fca)
@@ -5,8 +5,7 @@
 
 /* prototypes */
+
+extern void get_input(cliuser_t *);
 extern int tok_input(cliuser_t *);
-extern void get_input(cliuser_t *);
-extern void cli_restricted(char *);
-extern void read_line(char *, int);
 
 #endif
Index: uspace/app/bdsh/scli.h
===================================================================
--- uspace/app/bdsh/scli.h	(revision 69145dae045b049d3f508dcd8da43aafe18f8710)
+++ uspace/app/bdsh/scli.h	(revision 88944695970ebfd82dce23b26a27ded9fda43fca)
@@ -11,5 +11,5 @@
 	char *cwd;
 	char *prompt;
-	uint64_t lasterr;
+	int lasterr;
 } cliuser_t;
 
