]> git.zerfleddert.de Git - record-dvb/blobdiff - sap.c
use recvd instead of BUFFSIZE, so we only process really received
[record-dvb] / sap.c
diff --git a/sap.c b/sap.c
index 49dfcc8d8f2d9f0c2d7074f129579410887d58d4..232c0c3f80ea00a2d1ae239b4558c9776b2845f4 100644 (file)
--- a/sap.c
+++ b/sap.c
@@ -51,7 +51,7 @@ char *get_url_from_sap(char *service)
                FD_SET(fd, &rfds);
 
                tv.tv_sec = 0;
-               tv.tv_usec = 1000;
+               tv.tv_usec = 100000;
 
                if ((retval = select(fd+1, &rfds, NULL, NULL, &tv)) == -1) {
                        perror("select");
@@ -115,10 +115,9 @@ char *get_url_from_sap(char *service)
                 */
 
                pos = payload;
-               while(*pos != 0 && (pos-buffer) < BUFFSIZE) {
-                       if (*pos == 0x0d) {
+               while(*pos != 0 && (pos-buffer) < recvd) {
+                       if (*pos == 0x0d)
                                *pos = 0;
-                       }
 
                        if (*pos == 0x0a) {
                                *pos = 0;
@@ -140,13 +139,11 @@ char *get_url_from_sap(char *service)
                                                        poscnt++;
 
                                                        /* c=<network type> <address type> <connection address> */
-                                                       if (poscnt == 2) { 
+                                                       if (poscnt == 2)
                                                                host = payload + 1;
-                                                       }
 
-                                                       if (poscnt > 2) {
+                                                       if (poscnt > 2)
                                                                break;
-                                                       }
                                                }
                                                payload++;
                                        }
@@ -160,17 +157,14 @@ char *get_url_from_sap(char *service)
                                                        poscnt++;
 
                                                        /* m=<media> <port> <transport> <fmt list> */
-                                                       if (poscnt == 1) { 
+                                                       if (poscnt == 1)
                                                                port = payload + 1;
-                                                       }
 
-                                                       if (poscnt == 2) { 
+                                                       if (poscnt == 2)
                                                                proto = payload + 1;
-                                                       }
 
-                                                       if (poscnt > 2) {
+                                                       if (poscnt > 2)
                                                                break;
-                                                       }
                                                }
                                                payload++;
                                        }
Impressum, Datenschutz