remove casts from xmalloc()
diff --git a/archival/dpkg.c b/archival/dpkg.c
index 9024d41..6ef0452 100644
--- a/archival/dpkg.c
+++ b/archival/dpkg.c
@@ -442,7 +442,7 @@
 		field2 = strtok_r(line2, "|", &line_ptr2);
 		if ((edge_type == EDGE_DEPENDS || edge_type == EDGE_PRE_DEPENDS) &&
 		    (strcmp(field, field2) != 0)) {
-			or_edge = (edge_t *)xmalloc(sizeof(edge_t));
+			or_edge = xmalloc(sizeof(edge_t));
 			or_edge->type = edge_type + 1;
 		} else {
 			or_edge = NULL;
@@ -456,7 +456,7 @@
 		}
 
 		do {
-			edge = (edge_t *) xmalloc(sizeof(edge_t));
+			edge = xmalloc(sizeof(edge_t));
 			edge->type = edge_type;
 
 			/* Skip any extra leading spaces */
@@ -1708,7 +1708,7 @@
 				/* If no previous entry was found initialise a new entry */
 				if ((status_hashtable[status_num] == NULL) ||
 					(status_hashtable[status_num]->status == 0)) {
-					status_node = (status_node_t *) xmalloc(sizeof(status_node_t));
+					status_node = xmalloc(sizeof(status_node_t));
 					status_node->package = deb_file[deb_count]->package;
 					/* reinstreq isnt changed to "ok" until the package control info
 					 * is written to the status file*/
diff --git a/console-tools/loadfont.c b/console-tools/loadfont.c
index 36f0e6d..6aa739b 100644
--- a/console-tools/loadfont.c
+++ b/console-tools/loadfont.c
@@ -84,7 +84,7 @@
 	uint16_t unicode;
 
 	maxct = tailsz;				/* more than enough */
-	up = (struct unipair *) xmalloc(maxct * sizeof(struct unipair));
+	up = xmalloc(maxct * sizeof(struct unipair));
 
 	for (glyph = 0; glyph < fontsize; glyph++) {
 		while (tailsz >= 2) {
diff --git a/coreutils/tail.c b/coreutils/tail.c
index 505a8fd..643c0f3 100644
--- a/coreutils/tail.c
+++ b/coreutils/tail.c
@@ -152,7 +152,7 @@
 	}
 
 	/* open all the files */
-	fds = (int *)xmalloc(sizeof(int) * (argc - optind + 1));
+	fds = xmalloc(sizeof(int) * (argc - optind + 1));
 
 	argv += optind;
 	nfiles = i = 0;
diff --git a/e2fsprogs/blkid/probe.c b/e2fsprogs/blkid/probe.c
index ea9a619..8c6e2aa 100644
--- a/e2fsprogs/blkid/probe.c
+++ b/e2fsprogs/blkid/probe.c
@@ -349,7 +349,7 @@
 	 * pagesize).
 	 */
 	if (lseek(fd, 1024, SEEK_SET) < 0) return 1;
-	sws = (struct swap_id_block *)xmalloc(1024);
+	sws = xmalloc(1024);
 	if (read(fd, sws, 1024) != 1024) {
 		free(sws);
 		return 1;
@@ -620,7 +620,7 @@
 			if (lseek(fd, idx << 10, SEEK_SET) < 0)
 				continue;
 
-			buf = (unsigned char *)xmalloc(1024);
+			buf = xmalloc(1024);
 
 			if (read(fd, buf, 1024) != 1024) {
 				free(buf);
diff --git a/e2fsprogs/e2p/iod.c b/e2fsprogs/e2p/iod.c
index 8d4c5cd..23ab8d5 100644
--- a/e2fsprogs/e2p/iod.c
+++ b/e2fsprogs/e2p/iod.c
@@ -29,7 +29,7 @@
 	int	max_len, len;
 
 	max_len = PATH_MAX + sizeof(struct dirent);
-	de = (struct dirent *)xmalloc(max_len+1);
+	de = xmalloc(max_len+1);
 	memset(de, 0, max_len+1);
 
 	dir = opendir (dir_name);
diff --git a/editors/awk.c b/editors/awk.c
index 147c621..81ca9da 100644
--- a/editors/awk.c
+++ b/editors/awk.c
@@ -781,7 +781,7 @@
 
 	if (! cb) {
 		size = (n <= MINNVBLOCK) ? MINNVBLOCK : n;
-		cb = (nvblock *)xmalloc(sizeof(nvblock) + size * sizeof(var));
+		cb = xmalloc(sizeof(nvblock) + size * sizeof(var));
 		cb->size = size;
 		cb->pos = cb->nv;
 		cb->prev = pb;
@@ -2463,7 +2463,7 @@
 		  case XC( OC_CONCAT ):
 		  case XC( OC_COMMA ):
 			opn = strlen(L.s) + strlen(R.s) + 2;
-			X.s = (char *)xmalloc(opn);
+			X.s = xmalloc(opn);
 			strcpy(X.s, L.s);
 			if ((opinfo & OPCLSMASK) == OC_COMMA) {
 				L.s = getvar_s(V[SUBSEP]);
@@ -2702,7 +2702,7 @@
 		/* one byte is reserved for some trick in next_token */
 		if (fseek(F, 0, SEEK_END) == 0) {
 			flen = ftell(F);
-			s = (char *)xmalloc(flen+4);
+			s = xmalloc(flen+4);
 			fseek(F, 0, SEEK_SET);
 			i = 1 + fread(s+1, 1, flen, F);
 		} else {
diff --git a/editors/sed.c b/editors/sed.c
index 8d372ab..95ced1c 100644
--- a/editors/sed.c
+++ b/editors/sed.c
@@ -382,7 +382,7 @@
 	/* compile the match string into a regex */
 	if (*match != '\0') {
 		/* If match is empty, we use last regex used at runtime */
-		sed_cmd->sub_match = (regex_t *) xmalloc(sizeof(regex_t));
+		sed_cmd->sub_match = xmalloc(sizeof(regex_t));
 		xregcomp(sed_cmd->sub_match, match, cflags);
 	}
 	free(match);
diff --git a/editors/vi.c b/editors/vi.c
index 0bb2b23..1122f99 100644
--- a/editors/vi.c
+++ b/editors/vi.c
@@ -1370,7 +1370,7 @@
 
 	free(screen);
 	screensize = ro * co + 8;
-	screen = (Byte *) xmalloc(screensize);
+	screen = xmalloc(screensize);
 	// initialize the new screen. assume this will be a empty file.
 	screen_erase();
 	//   non-existent text[] lines start with a tilde (~).
@@ -1385,7 +1385,7 @@
 	if (size < 10240)
 		size = 10240;	// have a minimum size for new files
 	free(text);
-	text = (Byte *) xmalloc(size + 8);
+	text = xmalloc(size + 8);
 	memset(text, '\0', size);	// clear new text[]
 	//text += 4;		// leave some room for "oops"
 	return text;
@@ -1901,7 +1901,7 @@
 	// release old cmd
 	free(last_modifying_cmd);
 	// get buffer for new cmd
-	last_modifying_cmd = (Byte *) xmalloc(BUFSIZ);
+	last_modifying_cmd = xmalloc(BUFSIZ);
 	memset(last_modifying_cmd, '\0', BUFSIZ);	// clear new cmd queue
 	// if there is a current cmd count put it in the buffer first
 	if (cmdcnt > 0)
@@ -1954,7 +1954,7 @@
 	cnt = q - p + 1;
 	t = reg[dest];
 	free(t);		//  if already a yank register, free it
-	t = (Byte *) xmalloc(cnt + 1);	// get a new register
+	t = xmalloc(cnt + 1);	// get a new register
 	memset(t, '\0', cnt + 1);	// clear new text[]
 	strncpy((char *) t, (char *) p, cnt);	// copy text[] into bufer
 	reg[dest] = t;
diff --git a/libbb/dump.c b/libbb/dump.c
index 1071089..d6e31b9 100644
--- a/libbb/dump.c
+++ b/libbb/dump.c
@@ -358,8 +358,8 @@
 
 	if (!curp) {
 		address = (off_t)0; /*DBU:[dave@cray.com] initialize,initialize..*/
-		curp = (unsigned char *) xmalloc(bb_dump_blocksize);
-		savp = (unsigned char *) xmalloc(bb_dump_blocksize);
+		curp = xmalloc(bb_dump_blocksize);
+		savp = xmalloc(bb_dump_blocksize);
 	} else {
 		tmpp = curp;
 		curp = savp;
diff --git a/libbb/inet_common.c b/libbb/inet_common.c
index d8e0035..9cdcb11 100644
--- a/libbb/inet_common.c
+++ b/libbb/inet_common.c
@@ -158,7 +158,7 @@
 	if ((ent == NULL) && (np == NULL)) {
 		safe_strncpy(name, inet_ntoa(s_in->sin_addr), len);
 	}
-	pn = (struct addr *) xmalloc(sizeof(struct addr));
+	pn = xmalloc(sizeof(struct addr));
 	pn->addr = *s_in;
 	pn->next = INET_nn;
 	pn->host = host;
diff --git a/miscutils/nmeter.c b/miscutils/nmeter.c
index b098771..0c94853 100644
--- a/miscutils/nmeter.c
+++ b/miscutils/nmeter.c
@@ -104,7 +104,7 @@
 		// but allows us to allocate only once (at first sample)
 		// per proc file, and reuse buffer for each sample
 		if (!pf->file)
-			pf->file = (char*)xmalloc(proc_file_size);
+			pf->file = xmalloc(proc_file_size);
 		readfile_z(pf->file, proc_file_size, pf->name);
 	}
 	return pf->file;
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 7b715b9..1906697 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -1131,7 +1131,7 @@
 				/* We cannot relocate this one now because we don't know the value
 				   of the carry we need to add.  Save the information, and let LO16
 				   do the actual relocation.  */
-				n = (struct mips_hi16 *) xmalloc(sizeof *n);
+				n = xmalloc(sizeof *n);
 				n->addr = loc;
 				n->value = v;
 				n->next = ifile->mips_hi16_list;
diff --git a/networking/ifupdown.c b/networking/ifupdown.c
index b53d233..adbc37e 100644
--- a/networking/ifupdown.c
+++ b/networking/ifupdown.c
@@ -1048,7 +1048,7 @@
 		/* If the mapping script exited successfully, try to
 		 * grab a line of output and use that as the name of the
 		 * logical interface. */
-		char *new_logical = (char *)xmalloc(MAX_INTERFACE_LENGTH);
+		char *new_logical = xmalloc(MAX_INTERFACE_LENGTH);
 
 		if (fgets(new_logical, MAX_INTERFACE_LENGTH, out)) {
 			/* If we are able to read a line of output from the script,
@@ -1139,7 +1139,6 @@
 		llist_add_to_end(&target_list, argv[optind]);
 	}
 
-
 	/* Update the interfaces */
 	while (target_list) {
 		llist_t *iface_list;
@@ -1255,8 +1254,7 @@
 		state_fp = xfopen("/var/run/ifstate", "w");
 		while (state_list) {
 			if (state_list->data) {
-				fputs(state_list->data, state_fp);
-				fputc('\n', state_fp);
+				fprintf(state_fp, "%s\n", state_list->data);
 			}
 			state_list = state_list->link;
 		}
diff --git a/sysklogd/logread.c b/sysklogd/logread.c
index 9cc6561..745f976 100644
--- a/sysklogd/logread.c
+++ b/sysklogd/logread.c
@@ -117,7 +117,7 @@
 		log_len = buf->tail - i;
 		if (log_len < 0)
 			log_len += buf->size;
-		buf_data = (char *)xmalloc(log_len);
+		buf_data = xmalloc(log_len);
 
 		if (buf->tail < i) {
 			memcpy(buf_data, buf->data+i, buf->size-i);
diff --git a/util-linux/fdisk.c b/util-linux/fdisk.c
index e4f7e54..84538af 100644
--- a/util-linux/fdisk.c
+++ b/util-linux/fdisk.c
@@ -680,7 +680,7 @@
 read_pte(struct pte *pe, off_t offset)
 {
 	pe->offset = offset;
-	pe->sectorbuffer = (char *) xmalloc(sector_size);
+	pe->sectorbuffer = xmalloc(sector_size);
 	seek_sector(offset);
 	if (read(fd, pe->sectorbuffer, sector_size) != sector_size)
 		fdisk_fatal(unable_to_read);