A bunch of fixes for various compiler warnings master
authorJakob Haufe <sur5r@sur5r.net>
Sat, 6 Apr 2013 10:16:40 +0000 (12:16 +0200)
committerJakob Haufe <sur5r@sur5r.net>
Wed, 10 Apr 2013 13:06:19 +0000 (13:06 +0000)
12 files changed:
Makefile
gs105e.c
gs105e.h
main.c
shell.c
shell.h
shell_ip.c
shell_port.c
shell_sys.c
shell_vlan.c
socket.c
socket.h

index c5481872b8f27580eea3d19f47ed817922e4573a..0fd282d811286e50c6d58bba4a057e7461710879 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 CC=gcc
-CFLAGS=-I.
-DEPS = 
+CFLAGS=-Wall -std=c99
+DEPS =
 OBJ = socket.o main.o gs105e.o shell.o shell_ip.o shell_vlan.o shell_sys.o shell_port.o
 
 %.o: %.c $(DEPS)
index c594e86a71839a8d85c920268a2ef3363f77d079..381f0b14fa22013b90a4b73b962b519a75c559b5 100644 (file)
--- a/gs105e.c
+++ b/gs105e.c
@@ -5,8 +5,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 
-unsigned char * gs105e_queryData;
-unsigned int gsDataLen;
+char * gs105e_queryData;
+int gsDataLen;
 
 struct vlan * getVlanSetting(unsigned int vlanId) {
         struct vlan *  _vlan = settings.vlans;
@@ -81,7 +81,7 @@ void makeHeader(unsigned int queryType) {
 
 
 
-        gs105e_queryData = (unsigned char * )realloc(gs105e_queryData, sizeof(char) * 32);
+        gs105e_queryData = realloc(gs105e_queryData, sizeof(char) * 32);
         gsDataLen = 32;
         
         
@@ -123,7 +123,7 @@ void gs105e_query (void) {
         emptyBuffer();
         gs105e_queryData[23] = newPacketId();
         
-        if (gs105e_queryData[gsDataLen - 4] != 0xFF | gs105e_queryData[gsDataLen - 3] != 0xFF | gs105e_queryData[gsDataLen - 2] != 0x00 | gs105e_queryData[gsDataLen - 1] != 0x00)
+        if ((gs105e_queryData[gsDataLen - 4] != 0xFF) | (gs105e_queryData[gsDataLen - 3] != 0xFF) | (gs105e_queryData[gsDataLen - 2] != 0x00) | (gs105e_queryData[gsDataLen - 1] != 0x00))
                 addData("\xFF\xFF\x00\x00", 4);
         sendBroadcast(gs105e_queryData, gsDataLen);
         
@@ -251,7 +251,7 @@ int gs105e__receive(void) {
 //                printf("Received No or Invalid Packet\n");
                 return -1;
         }
-        if (memcmp(&data[8], myMac, 6) | data[0] != 0x01 | (!(data[1] == 0x02 | data[1] == 0x04))) {
+        if (memcmp(&data[8], myMac, 6) | (data[0] != 0x01) | (!((data[1] == 0x02) | (data[1] == 0x04)))) {
                 return -1;
         }
         
@@ -291,7 +291,7 @@ int gs105e_actRecv(void) {
 //                printf("Received No or Invalid Packet\n");
                 return -1;
         }
-        if (memcmp(&data[8], myMac, 6) | data[0] != 0x01 | (!(data[1] == 0x02 | data[1] == 0x04))) {
+        if (memcmp(&data[8], myMac, 6) | (data[0] != 0x01) | (!((data[1] == 0x02) | (data[1] == 0x04)))) {
                 gs105e_actRecv();
                 return -1;
         }
@@ -350,7 +350,7 @@ int gs105e_delVlan(int vlanId) {
         return gs105e_act();
         
 }
-int gs105e_restart(int vlanId) {
+int gs105e_restart(void) {
         makeHeader(QR_EXEC);
         
         char data[1] = {1};
index f856887d386fb38cdff5097abf1bc9ab45f8da74..7723b3a37d4768de4d72dff3bf1b9f55be40ab24 100644 (file)
--- a/gs105e.h
+++ b/gs105e.h
@@ -125,10 +125,18 @@ void gs105e_init(void) ;
 void makeHeader(unsigned int queryType);
 
 void gs105e_query (void);
+void gs105e_queryAll(void);
 
 int gs105e_addVlan(int vlanId) ;
 int gs105e_delVlan(int vlanId) ;
+int gs105e_setVlanMembers(unsigned int vlanId, unsigned int members, unsigned int tagged);
+int gs105e_vlanEnable();
 int gs105e_discover(void);
+int gs105e_restart(void);
 
 int gs105e_setName(char * data);
+int gs105e_dhcpSettings(int action);
+
+int gs105e_cableDiagnostics(int port);
+int gs105e_mirrorPorts(int outputPort, int mirrorMask);
 #endif
diff --git a/main.c b/main.c
index 3150ae7f008bcdab9120349359ae00180783af4a..582e47c1c35cfa2d02744ce2c48261677629ba36 100644 (file)
--- a/main.c
+++ b/main.c
@@ -12,15 +12,13 @@ int shellHandler = 0;
 
 
 int main () {
-        int n;
-        
         init_socket();
         
         myMac = get_mac("eth0");
         
         gs105e_init();
 
-        shell();
+        return shell();
 }
 
 
diff --git a/shell.c b/shell.c
index 922442e6cab16ac7dd4f1cc52a4bdf15a40831e8..8f32679f4eda10aa26c7dd2bdf0fc02aef4d4ce3 100644 (file)
--- a/shell.c
+++ b/shell.c
@@ -67,7 +67,6 @@ void printError(int errCode) {
 
 void shell_set(char ** argv, int elem) {
 
-        int n;
         if (strncmp(argv[1], "name", 4) == 0) {
                 if (elem != 3) {
                         printf("set name [name]\n");
diff --git a/shell.h b/shell.h
index 111487b425c6dfb86c2aa4dcfd42afc8f1aa809c..c243db647b009068695a71237821b1442b1cadc5 100644 (file)
--- a/shell.h
+++ b/shell.h
@@ -1,12 +1,15 @@
 #ifndef SHELL_H
 #define SHELL_H
 
+#define _BSD_SOURCE
+
 #include <stdio.h>
 #include "socket.h"
 
 #include "gs105e.h"
 #include <stdlib.h>
 #include <string.h>
+#include <unistd.h>
 
 #include <pwd.h>
 
@@ -19,5 +22,6 @@ void printError(int errCode);
 void printIp(char * data);
 void shell_port(char ** argv, int elem);
 void shell_sys(char ** argv, int elem);
+void shell_vlan(char **argv, int elem);
 
 #endif
index df50cdc918138b809da06ec12def87d2653f90a3..cc4b1b83a2afa0c7fd07e6df4ba322d9db83b3f2 100644 (file)
@@ -1,7 +1,6 @@
 #include "shell.h"
 void shell_ip(char ** argv, int elem) {
 
-        int n;
         if (elem == 1) {
                 printf(" ip [show|dhcp|set] \n");
                 return;
index 2dbf94e7c1ced3f9606c7315e949a0d13e9224fe..9ac059d262ef0412c2256b9e01fbd28b59d46330 100644 (file)
@@ -11,7 +11,7 @@ void shell_port(char ** argv, int elem) {
         if (strncmp(argv[1], "show", 4) == 0) {
                 printf("Port\tSpeed\t\tBytes In\t\tBytes Out\n");
                 for (n = 0; n< 5; n++) {
-                        printf("%i\t%s\t% 8lu\t\t% 8lu\n", n, 
+                        printf("%i\t%s\t%8lu\t\t%8lu\n", n,
                         (settings.portStatistics[n].state == 0x05 ? "1000 Mbit/s" : (settings.portStatistics[n].state == 0x04 ? "100 Mbit/s" : (settings.portStatistics[n].state == 0x03 ? "10 Mbit/s":  (settings.portStatistics[n].state == 0x00 ? "No Cable": "???")))),
                         settings.portStatistics[n].bytesIn,
                         settings.portStatistics[n].bytesOut
@@ -25,7 +25,7 @@ void shell_port(char ** argv, int elem) {
                 
                 n = atoi(argv[2]);
                 
-                if (n < 1 | n > 5) {
+                if ((n < 1) | (n > 5)) {
                         printf("Invalid Port\n");
                         return;
                 }
@@ -66,7 +66,7 @@ void shell_port(char ** argv, int elem) {
                 
                 n = atoi(argv[2]);
                 
-                if (n < 1 | n > 5) {
+                if ((n < 1) | (n > 5)) {
                         printf("Invalid Port %i\n", n);
                         return;
                 }
@@ -75,7 +75,7 @@ void shell_port(char ** argv, int elem) {
                 
                 for (m = 3; m < elem; m++) {
                         i = atoi(argv[m]);
-                        if (i < 1 | i > 5) {
+                        if ((i < 1) | (i > 5)) {
                                 printf("Invalid Port %i\n", i);
                                 return;
                         }
index d8520d5574c3da6837b451713a5213d23045970d..49f14437348fc054bf4651e351dcb78f5a6f1200 100644 (file)
@@ -3,7 +3,6 @@
 
 
 void shell_sys(char ** argv, int elem) {
-        int n, i, m, o;
         
         if (elem == 1) {
                 printf(" sys [show|name|password|restart] \n");
index 661eb3d77c6143d16d5d5cac5099f636e6d66546..abe0382881fcf973db011083b4c59f7643b285e5 100644 (file)
@@ -32,7 +32,7 @@ void shell_vlan(char ** argv, int elem) {
                 while (vl != NULL) {
                         printf("%u\t", vl->id);
                         for (n = 0; n < 5; n++)
-                                printf("%s\t", vl->members & (0x80 >> n) ? (vl->tag & (0x80 >> n) ? "\033[93mT\033[0m" : "\033[92mU\033[0m") : "\033[91m-\033[0m", (unsigned int) vl->members);
+                                printf("%s\t", vl->members & (0x80 >> n) ? (vl->tag & (0x80 >> n) ? "\033[93mT\033[0m" : "\033[92mU\033[0m") : "\033[91m-\033[0m" /*, (unsigned int) vl->members*/);
                         printf("\n");
                         vl = vl->next;
                 }
@@ -96,7 +96,7 @@ void shell_vlan(char ** argv, int elem) {
                 
                 m = atoi(argv[3]);
                 
-                if (m < 1 | m > 5) {
+                if ((m < 1) | (m > 5)) {
                         printf("Invalid Port ID\n");
                         return;
                 }         
@@ -134,7 +134,7 @@ void shell_vlan(char ** argv, int elem) {
                 
                 m = atoi(argv[3]);
                 
-                if (m < 1 | m > 5) {
+                if ((m < 1) | (m > 5)) {
                         printf("Invalid Port ID\n");
                         return;
                 }         
index b8a46ece23ed83ff78e724bfa01fa583d3dc86b1..8b3043cf2a1aae15e09a05d67f4b1eb0ecdba0bb 100644 (file)
--- a/socket.c
+++ b/socket.c
@@ -1,3 +1,5 @@
+#define _BSD_SOURCE
+
 #include <arpa/inet.h>
 #include <sys/socket.h>
 #include <stdlib.h>
@@ -79,8 +81,8 @@ int sendBroadcast(char * data, unsigned int len) {
 
 int recvBroadcast(char * data) {
 
-        struct sockaddr_in sa_in;
-        int sa_len = sizeof(sa_in);
+        struct sockaddr sa_in;
+        socklen_t sa_len = sizeof(sa_in);
         struct         timeval tout;
         tout.tv_sec = 0;
         tout.tv_usec = 500000;
@@ -90,7 +92,7 @@ int recvBroadcast(char * data) {
         int s = select(sock + 1, &fds, NULL, NULL, &tout);
         if (s <= 0)
                 return -1;
-        return recvfrom(sock, data, PACKET_BUFFER, 0,(struct sockaddr * )&sa_in, &sa_len);
+        return recvfrom(sock, data, PACKET_BUFFER, 0, &sa_in, &sa_len);
         
 }
 
@@ -98,7 +100,7 @@ int recvBroadcast(char * data) {
 int recvBroadcast_tout(char * data) {
 
         struct sockaddr_in sa_in;
-        int sa_len = sizeof(sa_in);
+        socklen_t sa_len = sizeof(sa_in);
         struct         timeval tout;
         tout.tv_sec = 5;
         tout.tv_usec = 0;
index cdbccead9c948bb70172656d2ccb542da9c137fc..ead9c6a385a83dbf9627692372337ede520e2f54 100644 (file)
--- a/socket.h
+++ b/socket.h
@@ -3,4 +3,8 @@ unsigned char * get_mac(const char *intf);
 
 unsigned char * myMac;
 
+int sendBroadcast(char *data, unsigned int len);
+int recvBroadcast(char * data);
+int recvBroadcast_tout(char * data);
+
 #define PACKET_BUFFER 2500