This is the mail archive of the
ecos-maintainers@sources.redhat.com
mailing list for the eCos project.
Re: Welcome to sources.redhat.com
- From: Andrew Lunn <andrew dot lunn at ascom dot ch>
- To: Jonathan Larmour <jifl at ecoscentric dot com>
- Cc: eCos Maintainers <ecos-maintainers at sources dot redhat dot com>
- Date: Tue, 6 Aug 2002 20:55:28 +0200
- Subject: Re: Welcome to sources.redhat.com
- References: <20020806155646.18120.qmail@sources.redhat.com> <3D501063.6020204@ecoscentric.com>
> If you don't mind, for the time being, if you write your own patches can
> you still submit them for approval by any other maintainer anyway rather
> than going ahead and checking it in and just posting the patch?
Should this be to ecos-patches or ecos-maintainers?
A while ago i posted to ecos-patches a patch for the ftp client. Here
is what i want to commit:
Index: ftpclient.c
===================================================================
RCS file: /cvs/ecos/ecos-opt/net/net/ftpclient/current/src/ftpclient.c,v
retrieving revision 1.4
diff -c -u -r1.4 ftpclient.c
--- ftpclient.c 23 May 2002 23:08:04 -0000 1.4
+++ ftpclient.c 6 Aug 2002 18:48:09 -0000
@@ -9,6 +9,7 @@
// -------------------------------------------
// This file is part of eCos, the Embedded Configurable Operating System.
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
+// Copyright (C) 2002 Andrew Lunn.
//
// eCos is free software; you can redistribute it and/or modify it under
// the terms of the GNU General Public License as published by the Free
@@ -54,6 +55,7 @@
#include <network.h>
#include <stdio.h>
+#include <stdlib.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
@@ -128,7 +130,9 @@
char buf[BUFSIZ];
int more = 0;
int ret;
-
+ int first_line=1;
+ int code=0;
+
do {
if ((ret=get_line(s,buf,sizeof(buf),ftp_printf)) < 0) {
@@ -137,7 +141,19 @@
ftp_printf(0,"FTP: %s\n",buf);
- more = (buf[3] == '-');
+ if (first_line) {
+ code = strtoul(buf,NULL,0);
+ first_line=0;
+ more = (buf[3] == '-');
+ } else {
+ if (isdigit(buf[0]) && isdigit(buf[1]) && isdigit(buf[2]) &&
+ (code == strtoul(buf,NULL,0)) &&
+ buf[3]==' ') {
+ more=0;
+ } else {
+ more =1;
+ }
+ }
} while (more);
return (buf[0] - '0');
@@ -461,7 +477,7 @@
int ret;
- ret = command("QUIT","",s,msgbuf,msgbuflen,ftp_printf);
+ ret = command("QUIT",NULL,s,msgbuf,msgbuflen,ftp_printf);
if (ret < 0) {
return (ret);
}