This is the mail archive of the ecos-devel@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

CDL interfaces for eCos networking


I've noticed that the common networking infrastructure package
(CYGPKG_NET) declares the same CDL interfaces as the lwIP package
(CYGPKG_NET_LWIP):

  cdl_interface CYGPKG_NET_STACK
  cdl_interface CYGPKG_NET_STACK_INET
  cdl_interface CYGPKG_NET_STACK_INET6

Presumably these interface declarations were placed in CYGPKG_NET at a
time when it was assumed that _all_ networking stack implementations
would use that package.

Now we have the lwIP stack which does not use CYGPKG_NET. If a developer
attempts to load both CYGPKG_NET and CYGPKG_NET_LWIP into a single eCos
configuration, libCDL reports errors due to duplicate cdl_interface
declarations. Of course it's unlikely to be sensible to load both these
packages, but that's not the point - the naming clash should be fixed.

Are these cdl_interfaces intended to indicate the availability of _any_
networking stack or specifically one that provides a BSD sockets API?
At present, the only packages that "require" these interfaces are HTTPD
and Microwindows. I expect that both these packages require BSD sockets.
In that case, I propose that we eliminate the CDL interface declarations
from the lwIP stack. Any future packages which depend on one of the
lwIP-specific stack APIs can simply "require CYGPKG_NET_LWIP".

Comments?

John Dallaway


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]