summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-10-31 20:39:13 (UTC)
committer llornkcor <llornkcor>2002-10-31 20:39:13 (UTC)
commit00a211621ea11ed73d803a3e52c09ce1e76864eb (patch) (side-by-side diff)
tree01b54261103785b7eaa46471809494807291494b
parent88310c7207b84c79dbb11ab3c3afeded1874c10b (diff)
downloadopie-00a211621ea11ed73d803a3e52c09ce1e76864eb.zip
opie-00a211621ea11ed73d803a3e52c09ce1e76864eb.tar.gz
opie-00a211621ea11ed73d803a3e52c09ce1e76864eb.tar.bz2
better fix
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/todayplugins/stockticker/libstocks/csv.c2
-rw-r--r--noncore/todayplugins/stockticker/libstocks/http.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/noncore/todayplugins/stockticker/libstocks/csv.c b/noncore/todayplugins/stockticker/libstocks/csv.c
index f45af52..6170bed 100644
--- a/noncore/todayplugins/stockticker/libstocks/csv.c
+++ b/noncore/todayplugins/stockticker/libstocks/csv.c
@@ -1,86 +1,88 @@
/* libstocks - Library to get current stock quotes from Yahoo Finance
*
* Copyright (C) 2000 Eric Laeuffer
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#define __CSV_C__
+#ifndef __UNIX__
#define __UNIX__
+#endif
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#ifdef __WINDOWS__
#include <mbstring.h>
#endif
#include "csv.h"
#include "stocks.h"
#include "lists.h"
#define DATE_LENGTH 7 /*YYMMDD*/
const char *months[12]=
{
"Jan",
"Feb",
"Mar",
"Apr",
"May",
"Jun",
"Jul",
"Aug",
"Sep",
"Oct",
"Nov",
"Dec"
};
/*****************************************************************************/
/* Replacement of the strtok function. This one forgets "delim" when it is */
/* between two commas. */
/* Thanks to Julio Lucas who has told me the bug and has proposed me a patch */
/*****************************************************************************/
char *csv_strtok(char *s, char *delim)
{
static char *next=NULL;
char *temp, *first;
int comma=0;
if (s!=NULL) first=s;
else first=next;
temp=first;
if (*temp=='\0') return NULL;
while (*temp!='\0' && ((*temp!=*delim) || comma))
{
if (*temp=='"') comma ^= 1;
temp++;
}
if (*temp=='\0') next=temp;
else
{
*temp='\0';
next=temp+1;
}
return first;
}
diff --git a/noncore/todayplugins/stockticker/libstocks/http.c b/noncore/todayplugins/stockticker/libstocks/http.c
index 3078746..2f38f8a 100644
--- a/noncore/todayplugins/stockticker/libstocks/http.c
+++ b/noncore/todayplugins/stockticker/libstocks/http.c
@@ -1,86 +1,88 @@
/* libstocks - Library to get current stock quotes from Yahoo Finance
*
* Copyright (C) 2000 Eric Laeuffer
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#define __HTTP_C__
+#ifndef __UNIX__
#define __UNIX__
+#endif
#ifdef __UNIX__
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <unistd.h>
#elif __WINDOWS__
#include <winsock.h>
#include <mbstring.h>
#endif
#include <sys/types.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include "http.h"
#include "stocks.h"
#define BUF_SIZE 1024
#define HEADER_MAXBUF 512
/* pointer to proxy server name or NULL */
char *http_proxy_server=NULL;
/* proxy server port number or 0 */
int http_proxy_port=0;
/*****************************************************************************/
/* Gets the file from http://http_server/http_file */
/* This function is used to get quotes csv file from yahoo. */
/* It allocates memory for the file and defines *pdata (the pointer of datas)*/
/*****************************************************************************/
libstocks_return_code http_get(char *http_file, char *http_server, char **pdata)
{
struct hostent *host; /* structs needed by socket */
struct sockaddr_in server;
int s; /* socket descriptor */
char header[HEADER_MAXBUF]; /* request header */
int hlg; /* header length */
char buf[BUF_SIZE+1]; /* tempory buffer from socket read */
int r; /* number of bytes read by read function */
char *data=NULL; /* http server response */
int data_lgr; /* http server response length */
char *temp; /* pointer used to split header and csv */
int error_code; /* error code returned by http server */
char *csv_ptr; /* pointer to the csv content */
int header_founded; /* test if header is founded */
#ifdef DEBUG
printf("*http_get\n");
#endif
/* get host info by name :*/
if ((host = gethostbyname( http_proxy_server ? http_proxy_server : http_server)))
{
memset((char *) &server,0, sizeof(server));
memmove((char *) &server.sin_addr, host->h_addr, host->h_length);
server.sin_family = host->h_addrtype;
server.sin_port = (unsigned short) htons( http_proxy_server ? http_proxy_port : 80 );
} else
{