summaryrefslogtreecommitdiff
path: root/noncore/todayplugins
Unidiff
Diffstat (limited to 'noncore/todayplugins') (more/less context) (show whitespace changes)
-rw-r--r--noncore/todayplugins/stockticker/libstocks/http.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/noncore/todayplugins/stockticker/libstocks/http.c b/noncore/todayplugins/stockticker/libstocks/http.c
index cc78ab7..155ce4b 100644
--- a/noncore/todayplugins/stockticker/libstocks/http.c
+++ b/noncore/todayplugins/stockticker/libstocks/http.c
@@ -81,25 +81,24 @@ libstocks_return_code http_get(char *http_file, char *http_server, char **pdata)
81 { 81 {
82 memset((char *) &server,0, sizeof(server)); 82 memset((char *) &server,0, sizeof(server));
83 memmove((char *) &server.sin_addr, host->h_addr, host->h_length); 83 memmove((char *) &server.sin_addr, host->h_addr, host->h_length);
84 server.sin_family = host->h_addrtype; 84 server.sin_family = host->h_addrtype;
85 server.sin_port = (unsigned short) htons( http_proxy_server ? http_proxy_port : 80 ); 85 server.sin_port = (unsigned short) htons( http_proxy_server ? http_proxy_port : 80 );
86 86
87 } else 87 }
88 else
88 { 89 {
89
90#ifdef DEBUG 90#ifdef DEBUG
91 printf(" gethostbyname : NOK\n"); 91 printf(" gethostbyname : NOK\n");
92#endif 92#endif
93 return ERRHOST; 93 return ERRHOST;
94 } 94 }
95 95
96 /* create socket */ 96 /* create socket */
97 if ((s = socket(AF_INET, SOCK_STREAM, 0)) < 0) 97 if ((s = socket(AF_INET, SOCK_STREAM, 0)) < 0)
98 { 98 {
99
100#ifdef DEBUG 99#ifdef DEBUG
101 printf(" create socket : NOK\n"); 100 printf(" create socket : NOK\n");
102#endif 101#endif
103 return ERRSOCK; 102 return ERRSOCK;
104 } 103 }
105 104
@@ -156,33 +155,33 @@ libstocks_return_code http_get(char *http_file, char *http_server, char **pdata)
156#ifdef __UNIX__ 155#ifdef __UNIX__
157 r=read(s,buf,BUF_SIZE); 156 r=read(s,buf,BUF_SIZE);
158#elif __WINDOWS__ 157#elif __WINDOWS__
159 r=recv(s,buf,BUF_SIZE,0); 158 r=recv(s,buf,BUF_SIZE,0);
160#endif 159#endif
161 160
162 if (r) 161 if (r > 0)
163 { 162 {
164 if(!data_lgr) 163 if(!data_lgr)
165 { 164 {
166 if((data = malloc(r+1))==NULL) 165 if((data = malloc(r+1))==NULL)
167 { 166 {
168 fprintf(stderr,"Memory allocating error (%s line %d)\n" 167 fprintf(stderr,"Memory allocating error (%s line %d)\n",
169 ,__FILE__, __LINE__); 168 __FILE__, __LINE__);
170 exit(1); 169 exit(1);
171 } 170 }
172 171
173 memcpy(data,buf,r); 172 memcpy(data,buf,r);
174 data_lgr = r; 173 data_lgr = r;
175 data[r]=0; 174 data[r]=0;
176 } 175 }
177 else 176 else
178 { 177 {
179 if((temp = malloc(r+data_lgr+1))==NULL) 178 if((temp = malloc(r+data_lgr+1))==NULL)
180 { 179 {
181 fprintf(stderr,"Memory allocating error (%s line %d)\n" 180 fprintf(stderr,"Memory allocating error (%s line %d)\n",
182 ,__FILE__, __LINE__); 181 __FILE__, __LINE__);
183 exit(1); 182 exit(1);
184 } 183 }
185 memcpy(temp, data, data_lgr); 184 memcpy(temp, data, data_lgr);
186 memcpy(temp+data_lgr, buf, r); 185 memcpy(temp+data_lgr, buf, r);
187 temp[r+data_lgr]=0; 186 temp[r+data_lgr]=0;
188 data_lgr += r; 187 data_lgr += r;
@@ -237,14 +236,14 @@ libstocks_return_code http_get(char *http_file, char *http_server, char **pdata)
237 return ERRPAHD; 236 return ERRPAHD;
238 } 237 }
239 238
240 if ((csv_ptr = malloc(strlen(temp)+1))==NULL) 239 if ((csv_ptr = malloc(strlen(temp)+1))==NULL)
241 { 240 {
242 free(data); 241 free(data);
243 fprintf(stderr,"Memory allocating error (%s line %d)\n" 242 fprintf(stderr,"Memory allocating error (%s line %d)\n",
244 ,__FILE__, __LINE__); 243 __FILE__, __LINE__);
245 exit(1); 244 exit(1);
246 } 245 }
247 246
248 memcpy(csv_ptr, temp, strlen(temp)+1); 247 memcpy(csv_ptr, temp, strlen(temp)+1);
249 free(data); 248 free(data);
250 249