117 { |
117 { |
118 char *inp, *p, *q, buf[SS_BUFSIZE], obuf[SS_BUFSIZE]; |
118 char *inp, *p, *q, buf[SS_BUFSIZE], obuf[SS_BUFSIZE]; |
119 int i, rc, rlen; |
119 int i, rc, rlen; |
120 socklen_t fromlen; |
120 socklen_t fromlen; |
121 float newtemp; |
121 float newtemp; |
|
122 #ifdef HAVE_WIRINGPI_H |
|
123 int j; |
|
124 #endif |
122 |
125 |
123 // if (debug) { |
126 // if (debug) { |
124 // char *hostname = inet_ntoa(peeraddr_in.sin_addr); |
127 // char *hostname = inet_ntoa(peeraddr_in.sin_addr); |
125 // syslog(LOG_NOTICE, "Start new client connection from %s port %u", hostname, ntohs(peeraddr_in.sin_port)); |
128 // syslog(LOG_NOTICE, "Start new client connection from %s port %u", hostname, ntohs(peeraddr_in.sin_port)); |
126 // fprintf(stdout, "Start new client connection from %s port %u\n", hostname, ntohs(peeraddr_in.sin_port)); |
129 // fprintf(stdout, "Start new client connection from %s port %u\n", hostname, ntohs(peeraddr_in.sin_port)); |
145 } |
148 } |
146 |
149 |
147 /* |
150 /* |
148 * Process commands from the client |
151 * Process commands from the client |
149 */ |
152 */ |
150 if (strncmp(buf, "ack", 3) == 0) { |
153 if (strncmp(buf, "HELP", 4) == 0) { |
|
154 srv_send((char *)"100 Help text follows"); |
|
155 srv_send((char *)"Recognized commands:"); |
|
156 srv_send((char *)""); |
|
157 srv_send((char *)"LCD Get LCD screen (allways 4 rows of 20 characters)"); |
|
158 srv_send((char *)"."); |
|
159 } else if (strncmp(buf, "LCD", 3) == 0) { |
|
160 #ifdef HAVE_WIRINGPI_H |
|
161 srv_send((char *)"201 information follows"); |
|
162 for (j = 0; j < 4; j++) { |
|
163 sprintf(obuf, " "); |
|
164 for (i = 0; i < 20; i++) |
|
165 obuf[i] = lcdbuf[lcdHandle][i][j]; |
|
166 srv_send(obuf); |
|
167 } |
|
168 srv_send((char *)"."); |
|
169 #else |
|
170 srv_send((char *)"403 LCD not available"); |
|
171 #endif |
|
172 } else if (strncmp(buf, "ack", 3) == 0) { |
151 srv_send((char *)"ack"); |
173 srv_send((char *)"ack"); |
152 } else if (strncmp(buf, "lcd", 3) == 0) { |
174 } else if (strncmp(buf, "lcd", 3) == 0) { |
153 sprintf(obuf, "[\" \", \" \", \" \", \" \"]"); |
175 sprintf(obuf, "[\" \", \" \", \" \", \" \"]"); |
154 #ifdef HAVE_WIRINGPI_H |
176 #ifdef HAVE_WIRINGPI_H |
155 for (i = 0; i < 20; i++) { |
177 for (i = 0; i < 20; i++) { |