picotcp tftp support [was Adding IPv4 multicast support]

Antony Pavlov antonynpavlov at gmail.com
Tue Jul 15 00:01:57 PDT 2014


On Sun, 13 Jul 2014 16:28:58 +0200
Daniele Lacamera <daniele.lacamera at tass.be> wrote:

> On Sun, Jul 13, 2014 at 12:55 PM, Antony Pavlov <antonynpavlov at gmail.com> wrote:
> > On Sun, 13 Jul 2014 12:11:17 +0200
> > Colin Leitner <colin.leitner at googlemail.com> wrote:
> >
> >> Hello everyone,
> >>
> >> I'm working on adding multicast support to barebox (for device discovery) and wanted to know if there's interest in having that included in upstream.
> >
> > There is an initiative on integrating picotcp into barebox.
> >
> > picotcp is a free TCP/IP stack implementation, see
> >   https://github.com/tass-belgium/picotcp
> >
> > AFAIK latest picotcp-enbled barebox anounced here:
> >   http://lists.infradead.org/pipermail/barebox/2014-June/019723.html
> >
> > Can be network device discovery realized using picotcp entities?
> >
> > To Daniele: how things stand with picotcp tftp support?

...

> 
> TFTP is integrated in masterbranch, documented and tested.
> PicoTCP app can act as TFTP server as well as client. Supports put/get
> operations. Tested against tftp(d)-hpa.

barebox uses POSIX file interface for working with tftp.

We have to provide these basic functions (see fs/tftp.c):

static struct fs_driver_d tftp_driver = {
        .open      = tftp_open,
        .read      = tftp_read,
        .write     = tftp_write,
        .close     = tftp_close,
        /* Other functions for unlink, truncate,
           mkdir, rmdir, stat, opendir, lseek, create
           are not so important. */
};

So **fs/tftp.c code is driven** by user code that
uses file interface for accessing to the files
on tftp-server.

AFAI understand picotcp tftp support uses event-driven interface
so **user code is driven** by picotcp tftp support code.

How we can use picotcp tftp support for realization
of POSIX file interface?

-- 
Best regards,
  Antony Pavlov



More information about the barebox mailing list