From 49db7b428a4752749fb421bfbe50946cafa2fc3f Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Sun, 14 Jun 2009 16:25:26 +0000 Subject: Fix type of length argument to sockset syscalls. Various socket syscalls receive a length argument that should be a socklen_t rsp. a ptr to a socklen_t but instead int rsp. ptr to int were being passed. While in theory this was a bug it's harmless as dangerously large values would not be used but the issue manifested itself in a significant number of compilation warnings. --- ax25/ax25d.c | 6 +++--- ax25/axspawn.c | 8 +++++--- ax25/mheardd.c | 2 +- ax25/rxecho.c | 5 +++-- 4 files changed, 12 insertions(+), 9 deletions(-) (limited to 'ax25') diff --git a/ax25/ax25d.c b/ax25/ax25d.c index 2bbf388..63ec5d2 100644 --- a/ax25/ax25d.c +++ b/ax25/ax25d.c @@ -1,5 +1,5 @@ /* - * $Id: ax25d.c,v 1.6 2009/06/14 08:06:06 ralf Exp $ + * $Id: ax25d.c,v 1.7 2009/06/14 16:25:26 ralf Exp $ * * This is my version of axl.c, written for the LBBS code to make it * compatable with the kernel AX25 driver. It appears to work, with @@ -274,7 +274,7 @@ int main(int argc, char *argv[]) struct sockaddr_rose rose; } sockaddr; struct sigaction act, oact; - int addrlen; + socklen_t addrlen; int cnt; char buf[1024]; char *p; @@ -816,7 +816,7 @@ static int ReadConfig(void) char buffer[2048]; char *s, *port, *call, *node, *addr = NULL; unsigned long val; - int addrlen; + socklen_t addrlen; int af_type = 0; /* Keep GCC happy */ int line = 0; int hunt = TRUE, error = FALSE; diff --git a/ax25/axspawn.c b/ax25/axspawn.c index a1af4c9..0769353 100644 --- a/ax25/axspawn.c +++ b/ax25/axspawn.c @@ -1,6 +1,6 @@ /* * - * $Id: axspawn.c,v 1.20 2009/06/14 13:27:51 ralf Exp $ + * $Id: axspawn.c,v 1.21 2009/06/14 16:25:26 ralf Exp $ * * axspawn.c - run a program from ax25d. * @@ -1046,7 +1046,8 @@ void new_user(char *newuser) char buf[4096]; char subdir[4]; int cnt; - unsigned char *p, *q; + unsigned char *q; + char *p; struct stat fst; int fd_a, fd_b, fd_l; mode_t homedir_mode = S_IRUSR|S_IWUSR|S_IXUSR|S_IXOTH|(secure_home ? 0 : (S_IRGRP|S_IXGRP)); @@ -1343,7 +1344,8 @@ int main(int argc, char **argv) { char call[20], user[20], as_user[20]; char buf[2048]; - int k, cnt, digits, letters, invalid, ssid, ssidcnt, addrlen; + int k, cnt, digits, letters, invalid, ssid, ssidcnt; + socklen_t addrlen; struct timeval tv; pid_t pid = -1; char *p; diff --git a/ax25/mheardd.c b/ax25/mheardd.c index 3de25ea..31f9f64 100644 --- a/ax25/mheardd.c +++ b/ax25/mheardd.c @@ -117,7 +117,7 @@ int main(int argc, char **argv) int size, s; char *port = NULL; struct sockaddr sa; - int asize; + socklen_t asize; long position; int ctlen, type, end, extseq, flush = FALSE; FILE *fp; diff --git a/ax25/rxecho.c b/ax25/rxecho.c index 525e098..e299f2c 100644 --- a/ax25/rxecho.c +++ b/ax25/rxecho.c @@ -369,7 +369,7 @@ int main(int argc, char **argv) #ifdef USE_SOCKADDR_SLL struct sockaddr_ll sll; struct sockaddr *psa = (struct sockaddr *)&sll; - const int sa_len = sizeof(struct sockaddr_ll); + const socklen_t sa_len = sizeof(struct sockaddr_ll); int from_idx; #else #ifdef USE_SOCKADDR_SPKT @@ -383,7 +383,8 @@ int main(int argc, char **argv) #endif char from_dev_name[sizeof(psa->sa_data)]; #endif - int s, size, alen; + int s, size; + socklen_t alen; unsigned char buf[1500]; struct config *p, *list; -- cgit v1.2.3