Index: uspace/srv/hid/adb_mouse/adb_dev.c
===================================================================
--- uspace/srv/hid/adb_mouse/adb_dev.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/adb_mouse/adb_dev.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -50,5 +50,5 @@
 int adb_dev_init(void)
 {
-	char *input = "/dev/adb/mouse";
+	const char *input = "/dev/adb/mouse";
 	int input_fd;
 
Index: uspace/srv/hid/char_mouse/chardev.c
===================================================================
--- uspace/srv/hid/char_mouse/chardev.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/char_mouse/chardev.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -52,5 +52,5 @@
 int mouse_port_init(void)
 {
-	char *input = "/dev/char/ps2b";
+	const char *input = "/dev/char/ps2b";
 	int input_fd;
 
Index: uspace/srv/hid/fb/serial_console.c
===================================================================
--- uspace/srv/hid/fb/serial_console.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/fb/serial_console.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -100,5 +100,5 @@
 };
 
-void serial_puts(char *str)
+void serial_puts(const char *str)
 {
 	while (*str)
Index: uspace/srv/hid/fb/serial_console.h
===================================================================
--- uspace/srv/hid/fb/serial_console.h	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/fb/serial_console.h	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -43,5 +43,5 @@
 typedef void (*putc_function_t)(char);
 
-void serial_puts(char *str);
+void serial_puts(const char *str);
 void serial_goto(const unsigned int col, const unsigned int row);
 void serial_clrscr(void);
Index: uspace/srv/hid/kbd/port/adb.c
===================================================================
--- uspace/srv/hid/kbd/port/adb.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/kbd/port/adb.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -53,5 +53,5 @@
 int kbd_port_init(void)
 {
-	char *input = "/dev/adb/kbd";
+	const char *input = "/dev/adb/kbd";
 	int input_fd;
 
Index: uspace/srv/hid/kbd/port/chardev.c
===================================================================
--- uspace/srv/hid/kbd/port/chardev.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/hid/kbd/port/chardev.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -52,5 +52,5 @@
 int kbd_port_init(void)
 {
-	char *input = "/dev/char/ps2a";
+	const char *input = "/dev/char/ps2a";
 	int input_fd;
 
Index: uspace/srv/loader/elf_load.c
===================================================================
--- uspace/srv/loader/elf_load.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/loader/elf_load.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -60,5 +60,5 @@
 #define DPRINTF(...)
 
-static char *error_codes[] = {
+static const char *error_codes[] = {
 	"no error",
 	"invalid image",
@@ -95,12 +95,13 @@
  * pointed to by @a info.
  *
- * @param file_name	Path to the ELF file.
- * @param so_bias	Bias to use if the file is a shared object.
- * @param info		Pointer to a structure for storing information
- *			extracted from the binary.
+ * @param file_name Path to the ELF file.
+ * @param so_bias   Bias to use if the file is a shared object.
+ * @param info      Pointer to a structure for storing information
+ *                  extracted from the binary.
  *
  * @return EOK on success or negative error code.
- */
-int elf_load_file(char *file_name, size_t so_bias, elf_info_t *info)
+ *
+ */
+int elf_load_file(const char *file_name, size_t so_bias, elf_info_t *info)
 {
 	elf_ld_t elf;
@@ -130,5 +131,6 @@
  * earlier with elf_load_file(). This function does not return.
  *
- * @param info	Info structure filled earlier by elf_load_file()
+ * @param info Info structure filled earlier by elf_load_file()
+ *
  */
 void elf_run(elf_info_t *info, pcb_t *pcb)
@@ -280,5 +282,5 @@
  * @return NULL terminated description of error.
  */
-char *elf_error(unsigned int rc)
+const char *elf_error(unsigned int rc)
 {
 	assert(rc < sizeof(error_codes) / sizeof(char *));
Index: uspace/srv/loader/include/elf.h
===================================================================
--- uspace/srv/loader/include/elf.h	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/loader/include/elf.h	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -337,5 +337,5 @@
 #endif
 
-extern char *elf_error(unsigned int rc);
+extern const char *elf_error(unsigned int rc);
 
 #endif
Index: uspace/srv/loader/include/elf_load.h
===================================================================
--- uspace/srv/loader/include/elf_load.h	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/loader/include/elf_load.h	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -27,5 +27,5 @@
  */
 
-/** @addtogroup generic	
+/** @addtogroup generic
  * @{
  */
@@ -51,5 +51,5 @@
 
 	/** ELF interpreter name or NULL if statically-linked */
-	char *interp;
+	const char *interp;
 
 	/** Pointer to the dynamic section */
@@ -74,5 +74,5 @@
 } elf_ld_t;
 
-int elf_load_file(char *file_name, size_t so_bias, elf_info_t *info);
+int elf_load_file(const char *file_name, size_t so_bias, elf_info_t *info);
 void elf_run(elf_info_t *info, pcb_t *pcb);
 void elf_create_pcb(elf_info_t *info, pcb_t *pcb);
Index: uspace/srv/net/il/ip/ip.c
===================================================================
--- uspace/srv/net/il/ip/ip.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/il/ip/ip.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -479,5 +479,5 @@
 	ERROR_DECLARE;
 
-	measured_string_t	names[] = {{ "IPV", 3 }, { "IP_CONFIG", 9 }, { "IP_ADDR", 7 }, { "IP_NETMASK", 10 }, { "IP_GATEWAY", 10 }, { "IP_BROADCAST", 12 }, { "ARP", 3 }, { "IP_ROUTING", 10 }};
+	measured_string_t	names[] = {{ str_dup("IPV"), 3 }, { str_dup("IP_CONFIG"), 9 }, { str_dup("IP_ADDR"), 7 }, { str_dup("IP_NETMASK"), 10 }, { str_dup("IP_GATEWAY"), 10 }, { str_dup("IP_BROADCAST"), 12 }, { str_dup("ARP"), 3 }, { str_dup("IP_ROUTING"), 10 }};
 	measured_string_ref	configuration;
 	size_t				count = sizeof( names ) / sizeof( measured_string_t );
Index: uspace/srv/net/net/net.c
===================================================================
--- uspace/srv/net/net/net.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/net/net.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -154,5 +154,5 @@
  *  @returns Other error codes as defined for the add_configuration() function.
  */
-int	read_netif_configuration( char * name, netif_ref netif );
+int	read_netif_configuration( const char * name, netif_ref netif );
 
 /** Networking module global data.
@@ -413,5 +413,5 @@
 }
 
-int read_netif_configuration( char * name, netif_ref netif ){
+int read_netif_configuration( const char * name, netif_ref netif ){
 	// read the netif configuration file
 	return read_configuration_file( CONF_DIR, name, & netif->configuration );
@@ -485,7 +485,7 @@
 
 #ifdef CONFIG_NETIF_DP8390
-	char *		conf_files[] = { "lo", "ne2k" };
+	const char *		conf_files[] = { "lo", "ne2k" };
 #else
-	char *		conf_files[] = { "lo" };
+	const char *		conf_files[] = { "lo" };
 #endif
 
Index: uspace/srv/net/net/start/netstart.c
===================================================================
--- uspace/srv/net/net/start/netstart.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/net/start/netstart.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -69,5 +69,5 @@
  *  @returns Other error codes as defined for the task_spawn() function.
  */
-task_id_t	spawn( char * fname );
+task_id_t	spawn( const char * fname );
 
 int main( int argc, char * argv[] ){
@@ -97,6 +97,6 @@
 }
 
-task_id_t spawn( char * fname ){
-	char *	argv[ 2 ];
+task_id_t spawn( const char * fname ){
+	const char *	argv[ 2 ];
 	task_id_t	res;
 
Index: uspace/srv/net/netif/lo/lo.c
===================================================================
--- uspace/srv/net/netif/lo/lo.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/netif/lo/lo.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -102,5 +102,5 @@
 int netif_get_addr_message( device_id_t device_id, measured_string_ref address ){
 	if( ! address ) return EBADMEM;
-	address->value = DEFAULT_ADDR;
+	address->value = str_dup(DEFAULT_ADDR);
 	address->length = DEFAULT_ADDR_LEN;
 	return EOK;
Index: uspace/srv/net/nil/eth/eth.c
===================================================================
--- uspace/srv/net/nil/eth/eth.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/nil/eth/eth.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -308,5 +308,5 @@
 	eth_device_ref	device;
 	int				index;
-	measured_string_t	names[ 2 ] = {{ "ETH_MODE", 8 }, { "ETH_DUMMY", 9 }};
+	measured_string_t	names[ 2 ] = {{ str_dup("ETH_MODE"), 8 }, { str_dup("ETH_DUMMY"), 9 }};
 	measured_string_ref	configuration;
 	size_t				count = sizeof( names ) / sizeof( measured_string_t );
Index: uspace/srv/net/structures/module_map.c
===================================================================
--- uspace/srv/net/structures/module_map.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/structures/module_map.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -49,5 +49,5 @@
 GENERIC_CHAR_MAP_IMPLEMENT( modules, module_t )
 
-int add_module( module_ref * module, modules_ref modules, char * name, char * filename, services_t service, task_id_t task_id, connect_module_t connect_module ){
+int add_module( module_ref * module, modules_ref modules, const char * name, const char * filename, services_t service, task_id_t task_id, connect_module_t connect_module ){
 	ERROR_DECLARE;
 
@@ -86,6 +86,6 @@
 }
 
-task_id_t spawn( char * fname ){
-	char * argv[ 2 ];
+task_id_t spawn( const char * fname ){
+	const char * argv[ 2 ];
 	task_id_t	res;
 
Index: uspace/srv/net/structures/module_map.h
===================================================================
--- uspace/srv/net/structures/module_map.h	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/structures/module_map.h	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -79,8 +79,8 @@
 	/** Module name.
 	 */
-	char *		name;
+	const char *		name;
 	/** Module full path filename.
 	 */
-	char *		filename;
+	const char *		filename;
 	/** Connecting function.
 	 */
@@ -99,5 +99,5 @@
  *  @returns ENOMEM if there is not enough memory left.
  */
-int	add_module( module_ref * module, modules_ref modules, char * name, char * filename, services_t service, task_id_t task_id, connect_module_t * connect_module );
+int	add_module( module_ref * module, modules_ref modules, const char * name, const char * filename, services_t service, task_id_t task_id, connect_module_t * connect_module );
 
 /** Searches and returns the specified module.
@@ -116,5 +116,5 @@
  *  @returns 0 if there is no such module.
  */
-task_id_t	spawn( char * fname );
+task_id_t	spawn( const char * fname );
 
 #endif
Index: uspace/srv/net/tl/icmp/icmp.c
===================================================================
--- uspace/srv/net/tl/icmp/icmp.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/tl/icmp/icmp.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -464,5 +464,5 @@
 	ERROR_DECLARE;
 
-	measured_string_t	names[] = {{ "ICMP_ERROR_REPORTING", 20 }, { "ICMP_ECHO_REPLYING", 18 }};
+	measured_string_t	names[] = {{ str_dup("ICMP_ERROR_REPORTING"), 20 }, { str_dup("ICMP_ECHO_REPLYING"), 18 }};
 	measured_string_ref	configuration;
 	size_t				count = sizeof( names ) / sizeof( measured_string_t );
Index: uspace/srv/net/tl/udp/udp.c
===================================================================
--- uspace/srv/net/tl/udp/udp.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/net/tl/udp/udp.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -192,5 +192,5 @@
 	ERROR_DECLARE;
 
-	measured_string_t	names[] = {{ "UDP_CHECKSUM_COMPUTING", 22 }, { "UDP_AUTOBINDING", 15 }};
+	measured_string_t	names[] = {{ str_dup("UDP_CHECKSUM_COMPUTING"), 22 }, { str_dup("UDP_AUTOBINDING"), 15 }};
 	measured_string_ref	configuration;
 	size_t				count = sizeof( names ) / sizeof( measured_string_t );
Index: uspace/srv/taskmon/taskmon.c
===================================================================
--- uspace/srv/taskmon/taskmon.c	(revision bc9da2a77f6c4a089d8231e222d0c24ab3fc92c3)
+++ uspace/srv/taskmon/taskmon.c	(revision a000878c0dee83a08f032207ffd800c201fca95b)
@@ -49,9 +49,9 @@
 static void fault_event(ipc_callid_t callid, ipc_call_t *call)
 {
-	char *argv[6];
-	char *fname;
+	const char *argv[6];
+	const char *fname;
 	char *dump_fname;
 	char *s_taskid;
-	char **s;
+	const char **s;
 
 	task_id_t taskid;
@@ -89,5 +89,6 @@
 
 	printf(NAME ": Executing");
-        s = argv;
+	
+	s = argv;
 	while (*s != NULL) {
 		printf(" %s", *s);
