Hi,
a developer question. I got LuserNET working again! another application
almost saved from bitrot :)
I get however a lot of warnings about signedess in char*. In several
palces data buffers are specified as unsigned char, while in other
places data coming from those buffers is used as char*, including when
passing to C functions like atoi().
My simple knowledge would say that usually one can just use char* when
treating the content as binary or as string. While signeddess matters
when numbers are stored.
I converted many buffers and structs. Everything continues to work as
far as I can see.
Could someone comment? check my patch at least by skimming over it?
I wonder why these were declared as unsigned as first.
Riccardo
Index: NNTPServer.h
===================================================================
--- NNTPServer.h (revision 355)
+++ NNTPServer.h (working copy)
@@ -33,18 +33,18 @@
-(void) nntp_headerRange: (int)group : (int)first : (int)last : (int)num :
(char **)list partial: (BOOL)p qid: (unsigned int)qid;
--(void) nntp_headerId: (const char *)mid data: (const unsigned char *)data :
+-(void) nntp_headerId: (const char *)mid data: (const char *)data :
(int)length qid: (unsigned int)qid;
-(void) nntp_articleRange: (int)group : (int)num
- data: (const unsigned char *)data : (int)length qid: (unsigned int)qid;
+ data: (const char *)data : (int)length qid: (unsigned int)qid;
--(void) nntp_articleId: (const char *)mid data: (const unsigned char *)data :
+-(void) nntp_articleId: (const char *)mid data: (const char *)data :
(int)length qid: (unsigned int)qid;
/* name last first may-post */
--(void) nntp_groupList: (const unsigned char *)data : (int)length
+-(void) nntp_groupList: (const char *)data : (int)length
qid: (unsigned int)qid;
@@ -141,7 +141,7 @@
/* a copy is made of the data, so the caller does not have to keep it
around */
--(unsigned int) postArticle: (unsigned char *)data length: (int)length
+-(unsigned int) postArticle: (char *)data length: (int)length
priority: (int)priority;
/* If kill is YES, try _really_ hard to cancel (ie. if the request is
Index: NNTPServer.m
===================================================================
--- NNTPServer.m (revision 355)
+++ NNTPServer.m (working copy)
@@ -122,7 +122,7 @@
} msg;
struct
{
- unsigned char *data;
+ char *data;
int length;
} post;
} d;
@@ -373,7 +373,7 @@
int resp;
int resp_code; /* numeric code in status */
char *resp_msg; /* status message (if any) */
- unsigned char *resp_buf; /* read buffer */
+ char *resp_buf; /* read buffer */
int resp_buf_len; /* length of buffer */
int resp_data_len; /* data has been processed up to this point */
int resp_data_nline;
@@ -411,7 +411,7 @@
-(void) nc_updateWrite: (con_t *)c;
-(void) nc_writeCommand: (con_t *)c : (const char *)cmd, ...;
--(void) nc_writeData: (con_t *)c : (unsigned char *)data : (int)length;
+-(void) nc_writeData: (con_t *)c : (char *)data : (int)length;
-(void) nc_responseClear: (con_t *)c;
-(void) nc_responseWantData: (con_t *)c;
@@ -460,7 +460,7 @@
if (!have_addr)
{
struct hostent *h;
- unsigned char *a;
+ char *a;
h=gethostbyname(host);
if (!h)
@@ -470,7 +470,7 @@
return 0;
}
addr.sin_addr=*(struct in_addr *)h->h_addr;
- a=(unsigned char *)h->h_addr;
+ a=h->h_addr;
[rec nntp_message:
[NSString
stringWithFormat: _(@"Resolved '%s' to %i.%i.%i.%i"),
@@ -537,7 +537,7 @@
#endif
{
- unsigned char *a=(unsigned char *)&addr.sin_addr;
+ char *a=(char *)&addr.sin_addr;
[rec nntp_message:
[NSString stringWithFormat: _(@"Connecting to %i.%i.%i.%i:%i..."),
a[0],a[1],a[2],a[3],port]];
@@ -722,7 +722,7 @@
if (!cn->resp_buf_len) return;
if (cn->resp==0)
{ /* look for status line */
- unsigned char *b,*c,*e;
+ char *b,*c,*e;
e=cn->resp_buf+cn->resp_buf_len;
for (c=cn->resp_buf;c<e-1;c++)
if (c[0]=='\r' && c[1]=='\n')
@@ -757,7 +757,7 @@
else
if (cn->resp==2)
{ /* look for data ended by ".\r\n" alone on a line */
- unsigned char *c,*d,*e;
+ char *c,*d,*e;
c=d=cn->resp_buf+cn->resp_data_len;
e=cn->resp_buf+cn->resp_buf_len;
for (;c<e;c++)
@@ -815,7 +815,7 @@
{
char **list;
int num;
- unsigned char *b,*d,*e;
+ char *b,*d,*e;
num=0;
/* TODO: this will be excessively large almost all the time */
@@ -875,7 +875,7 @@
[NSException raise: @"NNTPServer_Error" format: @"responseClear called when resp=%i",c->resp];
if (c->resp==3)
{
- unsigned char *b;
+ char *b;
c->resp_buf_len-=c->resp_data_len;
/* data might have been large, so shrink the buffer again */
if (c->resp_buf_len)
@@ -911,9 +911,9 @@
-(void) nc_updateRead: (con_t *)c
{
- unsigned char buf[512];
+ char buf[512];
int len,ilen;
- unsigned char *b;
+ char *b;
/* if the socket has already been closed we're just parsing data we've already recieved */
ilen=0;
if (c->sock!=-1)
@@ -934,7 +934,7 @@
#ifdef DEBUG_SOCKET
{
- unsigned char b2[513];
+ char b2[513];
memcpy(b2,buf,512);
b2[len]=0;
fprintf(c->debug_write,"%s",b2);fflush(c->debug_write);
@@ -1038,7 +1038,7 @@
[self nc_updateWrite: c];
}
--(void) nc_writeData: (con_t *)c : (unsigned char *)data : (int)length
+-(void) nc_writeData: (con_t *)c : (char *)data : (int)length
{
if (c->write_pending)
{
@@ -1898,10 +1898,10 @@
}
--(unsigned int) postArticle: (unsigned char *)data length: (int)length priority: (int)priority
+-(unsigned int) postArticle: (char *)data length: (int)length priority: (int)priority
{
queue_entry_t q;
- unsigned char *b,*c,*dst;
+ char *b,*c,*dst;
int i,j;
q.what=WHAT_POST_ARTICLE;
Index: NNTPSource.h
===================================================================
--- NNTPSource.h (revision 355)
+++ NNTPSource.h (working copy)
@@ -30,7 +30,7 @@
NSMutableDictionary *request_map;
}
--(void) postArticle: (unsigned char *)data length: (int)length
+-(void) postArticle: (char *)data length: (int)length
sender: (NSObject *)sender;
@end
Index: NNTPSource.m
===================================================================
--- NNTPSource.m (revision 355)
+++ NNTPSource.m (working copy)
@@ -106,9 +106,9 @@
-(void) nntp_serverDate: (const char *)date qid: (unsigned int)qid { }
--(void) nntp_headerId: (const char *)mid data: (const unsigned char *)data : (int)length qid: (unsigned int)qid { }
--(void) nntp_articleRange: (int)group : (int)num data: (const unsigned char *)data : (int)length qid: (unsigned int)qid { }
--(void) nntp_articleId: (const char *)mid data: (const unsigned char *)data : (int)length qid: (unsigned int)qid
+-(void) nntp_headerId: (const char *)mid data: (const char *)data : (int)length qid: (unsigned int)qid { }
+-(void) nntp_articleRange: (int)group : (int)num data: (const char *)data : (int)length qid: (unsigned int)qid { }
+-(void) nntp_articleId: (const char *)mid data: (const char *)data : (int)length qid: (unsigned int)qid
{
unsigned char *d;
msg_id_t mdb_id;
@@ -126,7 +126,7 @@
memcpy(d,data,length);
[mdb setMessageData: d length: length : mdb_id];
}
--(void) nntp_groupList: (const unsigned char *)data : (int)length qid: (unsigned int)qid { }
+-(void) nntp_groupList: (const char *)data : (int)length qid: (unsigned int)qid { }
-(void) nntp_fail: (NSString *)reason qid: (unsigned int)qid
@@ -482,7 +482,7 @@
}
--(void) postArticle: (unsigned char *)data length: (int)length
+-(void) postArticle: (char *)data length: (int)length
sender: (NSObject *)sender
{
unsigned int qid;
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev