mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Antony Pavlov <antonynpavlov@gmail.com>
To: Daniele Lacamera <daniele.lacamera@tass.be>
Cc: barebox <barebox@lists.infradead.org>
Subject: Re: picotcp tftp support [was Adding IPv4 multicast support]
Date: Tue, 15 Jul 2014 14:27:53 +0400	[thread overview]
Message-ID: <20140715142753.d2c6424ea6b2d1b810b0de73@gmail.com> (raw)
In-Reply-To: <CAOngqVVHG5+S68okE4kqU95FNtkxvJFtcZj0W2KmH=54XxdKTg@mail.gmail.com>

On Tue, 15 Jul 2014 11:31:29 +0200
Daniele Lacamera <daniele.lacamera@tass.be> wrote:

> On Tue, Jul 15, 2014 at 9:01 AM, Antony Pavlov <antonynpavlov@gmail.com> wrote:
> >
> > 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?
> 
> Hi Antony,
> 
> I will be able to provide such an interface by using a similar
> approach to what you used for ping (so via net_poll() routine called
> in a loop), assuming that your posix-like interface expects blocking
> calls for read/write operations.

Alas! We can't use this approach for tftp because tftp is a FILESYSTEM in barebox.

Tftp user code know nothing about network stuff. User code just use read and write
for acessing file data, no matter which driver (ramdisk, SATA, MTD, I2C or network)
is used for actual data transfer.

> The loop will also be interruptible via CTRL+C.
> 
> I would like to know more about this approach though, are you
> implementing client only functionality (get/put) or do you want to be
> able to listen for client "connections" as well? How is the connection
> initiated (I see there is a tftp_probe function that's not included in
> the API group)?
> 
> Thanks,
> 
> /d


-- 
-- 
Best regards,
  Antony Pavlov

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2014-07-15 10:15 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-13 10:11 Adding IPv4 multicast support Colin Leitner
2014-07-13 10:55 ` Antony Pavlov
2014-07-13 10:52   ` Colin Leitner
2014-07-13 13:15     ` Colin Leitner
2014-07-13 14:28   ` Daniele Lacamera
2014-07-15  7:01     ` picotcp tftp support [was Adding IPv4 multicast support] Antony Pavlov
2014-07-15  9:31       ` Daniele Lacamera
2014-07-15 10:27         ` Antony Pavlov [this message]
2014-07-15 10:57           ` Daniele Lacamera
2014-07-15 12:57             ` Antony Pavlov
2014-07-15 15:55               ` Daniele Lacamera
2014-07-15 19:02                 ` Antony Pavlov
2014-07-16  6:30             ` Sascha Hauer
2014-07-16  6:48               ` Daniele Lacamera
2014-09-04 17:14                 ` Antony Pavlov
2014-09-05  7:37                   ` Daniele Lacamera
2014-09-26  9:27                   ` PicoTCP
2014-09-28 14:22                     ` Antony Pavlov
2014-09-29  9:45                       ` Daniele Lacamera
2014-09-29 10:10                         ` Michele Di Pede
2014-09-29 10:19                         ` Antony Pavlov
2014-07-15 18:17     ` Adding IPv4 multicast support Colin Leitner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140715142753.d2c6424ea6b2d1b810b0de73@gmail.com \
    --to=antonynpavlov@gmail.com \
    --cc=barebox@lists.infradead.org \
    --cc=daniele.lacamera@tass.be \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox