RE: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-07 Thread Luis.F.Correia
 

 -Original Message-
 From: Lynn Avants [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, July 07, 2004 3:13 AM
 To: [EMAIL PROTECTED]
 Subject: Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)
 
 On Tuesday 06 July 2004 03:58 pm, Erich Titl wrote:
 [...]
  Some time ago I tried to use busybox ash instead of the 
 installed one on
  Bering 1.2+. My goal was to get more space for possibly a 
 more recent
  gclibc library and more modern package versions. I quickly 
 found out that
  the ash syntax used in, for example, the backup routines 
 did not work.
  I guess in order to be able to use different shells we 
 should stick to an
  extreme low level of the possible tricks in the scripting 
 _dialect_ so
  porting issues will pop up less frequently. This may sound 
 like heresy in
  the ears of shell afficionados but will enhance the chance 
 to use different
  interpreters.
 
  No idea how much work it would take to get up to level 
 alone with busybox
  ash, let alone with another interpreter.
 
 David D rewrote Oxygen from the ground up in his last release 
 to use BB-ash.
 The problem we basically face is the behavior of the glibc-2.0.7 Ash-
 (stripped) is not compatible with any other version of Ash 
 known to mankind.
 This is the reason that David had to re-write init and other 
 core files when 
 he made the switch. That is likely another reason why we are 
 still using the 
 same binary that is so ancient. I don't know what the 
 difference is, but 
 everything else I've compiled has had syntax conflicts with 
 one package or
 another (if it even boots correctly to begin with). IIRC, 
 UClibc-team has made
 several corrections when they were first starting the 
 project. I also seem to
 recall that they are using BB-Ash, so this is likely the best 
 place to look at 
 using a different (and compatible) shell.

No, we are still using the latest available ASH because none of the
others seem to work.

BB-ash still has some problems with our scripts and we are currently
working on Dash, although there are some other places where scripting
seems also to be broken.

It is really just a matter of choosing the 'right' shell and change
everything accordingly.

p.s. I ask in advance to be forgiven if i'm making any major mistake...



Luis Correia   
Bering uClibc Team Member

PGP Fingerprint: BC44 D7DA 5A17 F92A CA21 9ABE DFF0 3540 2322 21F6 
Key Server: http://pgp.mit.edu




---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-07 Thread Erich Titl
Charles

At 17:37 06.07.2004 -0500, Charles Steinkuehler wrote:
Erich Titl wrote:

Charles
At 23:43 06.07.2004, Charles Steinkuehler wrote:
snip
IIRC, busybox ash has several compile-time options to allow for smaller size (by 
omitting lesser-used features that the complex scripts in LEAF tend to rely on).  
Are you sure you had everything enabled when you built the busybox ash and it still 
didn't work with Bering?
As sure as I can be, (which may not mean a lot.), but then why do we have a 
separate implementation of ash, sed, halt, klogd, reboot, syslogd, watchdog, 
wget. I believe busybox is part of initrd.lrp

Historical issues, in part (busybox didn't include ash, set, etc. when LRP was 
initially created).  There are also compatability issues (for instance, sed is really 
'put to the test' in several scripts that are part of LEAF, and I'm not sure the BB 
version of sed would work properly).

But then, this is busybox 0.60.5
/* vi: set sw=4 ts=4: */
// This file defines the feature set to be compiled into busybox.
// When you turn things off here, they won't be compiled in at all.
//
 This file is parsed by sed.  You MUST use single line comments.
//   i.e.,  //#define BB_BLAH
//
//
// BusyBox Applications
//#define BB_ADJTIMEX
//#define BB_AR
#define BB_ASH

OK, you're compiling ash...

snip

//#define BB_TEST

...but you're *NOT* compiling test, which (as it's alter-ego '[' ) is what processes 
those conditional commands you were having problems with:

Uuummpp... will recompile and start at field one

Thanks
Erich

THINK 
Püntenstrasse 39 
8143 Stallikon 
mailto:[EMAIL PROTECTED] 
PGP Fingerprint: BC9A 25BC 3954 3BC8 C024 8D8A B7D4 FF9D 05B8 0A16




---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Tom Eastep
Erich Titl wrote:
Hi
At 21:55 06.07.2004, Lynn Avants wrote:
On Monday 05 July 2004 07:44 pm, Mike Noyes wrote:
 On Mon, 2004-07-05 at 16:14, Chad Carr wrote:
  I say we all take a look at it, stamp it with
  approval or disapproval, and move on to more pressing questions, like
  when to back up changes and how the hell to write a full-featured
  templating system in the 92k stripped down /bin/sh from Oxygen!

 Chad,
 Dash may help in this area.

 http://gondor.apana.org.au/~herbert/dash/
 DASH is a POSIX-compliant implementation of /bin/sh that 
aims to
 be as small as possible.

DASH is not compilable for glibc-2.0.7.

Some time ago I tried to use busybox ash instead of the installed one on 
Bering 1.2+. My goal was to get more space for possibly a more recent 
gclibc library and more modern package versions. I quickly found out 
that the ash syntax used in, for example, the backup routines did not work.
I guess in order to be able to use different shells we should stick to 
an extreme low level of the possible tricks in the scripting _dialect_ 
so porting issues will pop up less frequently. This may sound like 
heresy in the ears of shell afficionados but will enhance the chance to 
use different interpreters.
So which constructs do you propose that we do away with?
-Tom
--
Tom Eastep\ Nothing is foolproof to a sufficiently talented fool
Shoreline, \ http://shorewall.net
Washington USA  \ [EMAIL PROTECTED]

---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Charles Steinkuehler
Erich Titl wrote:
Hi
At 21:55 06.07.2004, Lynn Avants wrote:
On Monday 05 July 2004 07:44 pm, Mike Noyes wrote:
 On Mon, 2004-07-05 at 16:14, Chad Carr wrote:
  I say we all take a look at it, stamp it with
  approval or disapproval, and move on to more pressing questions, like
  when to back up changes and how the hell to write a full-featured
  templating system in the 92k stripped down /bin/sh from Oxygen!

 Chad,
 Dash may help in this area.

 http://gondor.apana.org.au/~herbert/dash/
 DASH is a POSIX-compliant implementation of /bin/sh that aims to
 be as small as possible.
DASH is not compilable for glibc-2.0.7.
Some time ago I tried to use busybox ash instead of the installed one on 
Bering 1.2+. My goal was to get more space for possibly a more recent 
gclibc library and more modern package versions. I quickly found out that 
the ash syntax used in, for example, the backup routines did not work.
I guess in order to be able to use different shells we should stick to an 
extreme low level of the possible tricks in the scripting _dialect_ so 
porting issues will pop up less frequently. This may sound like heresy in 
the ears of shell afficionados but will enhance the chance to use different 
interpreters.

No idea how much work it would take to get up to level alone with busybox 
ash, let alone with another interpreter.
My understanding is the busybox ash comes from the same source the ash 
used in LRP came from (although I think there are a few differences, 
such as command line history, that are implemented differently), and 
should work fine with LEAF.

IIRC, busybox ash has several compile-time options to allow for smaller 
size (by omitting lesser-used features that the complex scripts in 
LEAF tend to rely on).  Are you sure you had everything enabled when you 
built the busybox ash and it still didn't work with Bering?

--
Charles Steinkuehler
[EMAIL PROTECTED]
---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Erich Titl
Tom
At 23:29 06.07.2004, Tom Eastep wrote:
Erich Titl wrote:
...
Some time ago I tried to use busybox ash instead of the installed one on 
Bering 1.2+. My goal was to get more space for possibly a more recent 
gclibc library and more modern package versions. I quickly found out that 
the ash syntax used in, for example, the backup routines did not work.
I guess in order to be able to use different shells we should stick to an 
extreme low level of the possible tricks in the scripting _dialect_ so 
porting issues will pop up less frequently. This may sound like heresy in 
the ears of shell afficionados but will enhance the chance to use 
different interpreters.
So which constructs do you propose that we do away with?
I believe I cannot put my fingers on one simple statement, definitely the 
bracket test  ( if [ -x /tmp/foo ] ) syntax clashes with busybox ash, at 
least with the version I tested. This syntax is elegant and widely used 
though, so you can imagine the impact such a thing would have.

Maybe someone else has more experience with other issues in the busybox shell?
cheers
Erich
THINK
Püntenstrasse 39
8143 Stallikon
mailto:[EMAIL PROTECTED]
PGP Fingerprint: BC9A 25BC 3954 3BC8 C024 8D8A B7D4 FF9D 05B8 0A16

---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com
___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Erich Titl
Charles
At 23:43 06.07.2004, Charles Steinkuehler wrote:
Erich Titl wrote:
Hi
At 21:55 06.07.2004, Lynn Avants wrote:
On Monday 05 July 2004 07:44 pm, Mike Noyes wrote:
 On Mon, 2004-07-05 at 16:14, Chad Carr wrote:
  I say we all take a look at it, stamp it with
  approval or disapproval, and move on to more pressing questions, like
  when to back up changes and how the hell to write a full-featured
  templating system in the 92k stripped down /bin/sh from Oxygen!

 Chad,
 Dash may help in this area.

 http://gondor.apana.org.au/~herbert/dash/
 DASH is a POSIX-compliant implementation of /bin/sh that aims to
 be as small as possible.
DASH is not compilable for glibc-2.0.7.
Some time ago I tried to use busybox ash instead of the installed one on 
Bering 1.2+. My goal was to get more space for possibly a more recent 
gclibc library and more modern package versions. I quickly found out that 
the ash syntax used in, for example, the backup routines did not work.
I guess in order to be able to use different shells we should stick to an 
extreme low level of the possible tricks in the scripting _dialect_ so 
porting issues will pop up less frequently. This may sound like heresy in 
the ears of shell afficionados but will enhance the chance to use 
different interpreters.
No idea how much work it would take to get up to level alone with busybox 
ash, let alone with another interpreter.
My understanding is the busybox ash comes from the same source the ash 
used in LRP came from (although I think there are a few differences, such 
as command line history, that are implemented differently), and should 
work fine with LEAF.

IIRC, busybox ash has several compile-time options to allow for smaller 
size (by omitting lesser-used features that the complex scripts in LEAF 
tend to rely on).  Are you sure you had everything enabled when you built 
the busybox ash and it still didn't work with Bering?
As sure as I can be, (which may not mean a lot.), but then why do we 
have a separate implementation of ash, sed, halt, klogd, reboot, syslogd, 
watchdog, wget. I believe busybox is part of initrd.lrp

But then, this is busybox 0.60.5
/* vi: set sw=4 ts=4: */
// This file defines the feature set to be compiled into busybox.
// When you turn things off here, they won't be compiled in at all.
//
 This file is parsed by sed.  You MUST use single line comments.
//   i.e.,  //#define BB_BLAH
//
//
// BusyBox Applications
//#define BB_ADJTIMEX
//#define BB_AR
#define BB_ASH
#define BB_BASENAME
#define BB_CAT
#define BB_CHGRP
#define BB_CHMOD
#define BB_CHOWN
#define BB_CHROOT
//#define BB_CHVT
#define BB_CLEAR
//#define BB_CMP
#define BB_CP
//#define BB_CPIO
#define BB_CUT
#define BB_DATE
//#define BB_DC
#define BB_DD
//#define BB_DEALLOCVT
#define BB_DF
#define BB_DIRNAME
#define BB_DMESG
//#define BB_DOS2UNIX
//#define BB_DPKG
//#define BB_DPKG_DEB
#define BB_DUTMP
#define BB_DU
//#define BB_DUMPKMAP
#define BB_ECHO
//#define BB_ENV
//#define BB_EXPR
//#define BB_FBSET
//#define BB_FDFLUSH
#define BB_FIND
#define BB_FREE
#define BB_FREERAMDISK
//#define BB_FSCK_MINIX
//#define BB_GETOPT
#define BB_GREP
#define BB_GUNZIP
#define BB_GZIP
#define BB_HALT
#define BB_HEAD
#define BB_HOSTID
#define BB_HOSTNAME
//#define BB_HUSH
#define BB_ID
//#define BB_IFCONFIG
#define BB_INIT
#define BB_INSMOD
#define BB_KILL
#define BB_KILLALL
#define BB_KLOGD
//#define BB_LASH
//#define BB_LENGTH
#define BB_LN
//#define BB_LOADACM
//#define BB_LOADFONT
#define BB_LOADKMAP
#define BB_LOGGER
//#define BB_LOGNAME
//#define BB_LOSETUP
#define BB_LS
#define BB_LSMOD
#define BB_MAKEDEVS
//#define BB_MD5SUM
#define BB_MKDIR
//#define BB_MKFIFO
#define BB_MKFS_MINIX
#define BB_MKNOD
//#define BB_MKSWAP
//#define BB_MKTEMP
//#define BB_MODPROBE
#define BB_MORE
#define BB_MOUNT
//#define BB_MSH
//#define BB_MT
#define BB_MV
#define BB_NC
#define BB_NSLOOKUP
#define BB_PIDOF
#define BB_PING
#define BB_PIVOT_ROOT
//#define BB_POWEROFF
#define BB_PRINTF
#define BB_PS
#define BB_PWD
#define BB_RDATE
//#define BB_READLINK
#define BB_REBOOT
//#define BB_RENICE
//#define BB_RESET
#define BB_RM
#define BB_RMDIR
#define BB_RMMOD
//#define BB_ROUTE
//#define BB_RPM2CPIO
#define BB_SED
//#define BB_SETKEYCODES
#define BB_SLEEP
#define BB_SORT
#define BB_STTY
//#define BB_SWAPONOFF
#define BB_SYNC
#define BB_SYSLOGD
#define BB_TAIL
#define BB_TAR
//#define BB_TEE
//#define BB_TEST
//#define BB_TELNET
//#define BB_TFTP
//#define BB_TIME
#define BB_TOP
#define BB_TOUCH
#define BB_TR
#define BB_TRACEROUTE
#define BB_TRUE_FALSE
#define BB_TTY
//#define BB_UNIX2DOS
//#define BB_UUENCODE
//#define BB_UUDECODE
#define BB_UMOUNT
#define BB_UNIQ
#define BB_UNAME
#define BB_UPDATE
#define BB_UPTIME
//#define BB_USLEEP
//#define BB_VI
#define BB_WATCHDOG
#define BB_WC
#define BB_WGET
#define BB_WHICH
#define BB_WHOAMI
#define BB_XARGS
#define BB_YES
// End of Applications List

THINK
Püntenstrasse 39
8143 Stallikon
mailto:[EMAIL PROTECTED]

Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Charles Steinkuehler
Erich Titl wrote:
Charles
At 23:43 06.07.2004, Charles Steinkuehler wrote:
snip
IIRC, busybox ash has several compile-time options to allow for smaller 
size (by omitting lesser-used features that the complex scripts in LEAF 
tend to rely on).  Are you sure you had everything enabled when you built 
the busybox ash and it still didn't work with Bering?
As sure as I can be, (which may not mean a lot.), but then why do we 
have a separate implementation of ash, sed, halt, klogd, reboot, syslogd, 
watchdog, wget. I believe busybox is part of initrd.lrp
Historical issues, in part (busybox didn't include ash, set, etc. when 
LRP was initially created).  There are also compatability issues (for 
instance, sed is really 'put to the test' in several scripts that are 
part of LEAF, and I'm not sure the BB version of sed would work properly).

But then, this is busybox 0.60.5
/* vi: set sw=4 ts=4: */
// This file defines the feature set to be compiled into busybox.
// When you turn things off here, they won't be compiled in at all.
//
 This file is parsed by sed.  You MUST use single line comments.
//   i.e.,  //#define BB_BLAH
//
//
// BusyBox Applications
//#define BB_ADJTIMEX
//#define BB_AR
#define BB_ASH
OK, you're compiling ash...
snip
//#define BB_TEST
...but you're *NOT* compiling test, which (as it's alter-ego '[' ) is 
what processes those conditional commands you were having problems with:

 definitely the bracket test  ( if [ -x /tmp/foo ] ) syntax
There should also be several ash options *OTHER* than the build switch 
you list above...I'm not sure where these would be in older busybox, but 
 in the current CVS, it looks like they're in the shell directory as 
part of Config.in:

http://www.busybox.net/cgi-bin/cvsweb/busybox/shell/Config.in?rev=1.16view=auto
Note the recent addition of a 64-bit math support, which might be handy 
for LEAF...

--
Charles Steinkuehler
[EMAIL PROTECTED]
---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel


Re: [--ot] [leaf-devel] leaf-tools overview (cdb, trig, tmpl)

2004-07-06 Thread Lynn Avants
On Tuesday 06 July 2004 03:58 pm, Erich Titl wrote:
[...]
 Some time ago I tried to use busybox ash instead of the installed one on
 Bering 1.2+. My goal was to get more space for possibly a more recent
 gclibc library and more modern package versions. I quickly found out that
 the ash syntax used in, for example, the backup routines did not work.
 I guess in order to be able to use different shells we should stick to an
 extreme low level of the possible tricks in the scripting _dialect_ so
 porting issues will pop up less frequently. This may sound like heresy in
 the ears of shell afficionados but will enhance the chance to use different
 interpreters.

 No idea how much work it would take to get up to level alone with busybox
 ash, let alone with another interpreter.

David D rewrote Oxygen from the ground up in his last release to use BB-ash.
The problem we basically face is the behavior of the glibc-2.0.7 Ash-
(stripped) is not compatible with any other version of Ash known to mankind.
This is the reason that David had to re-write init and other core files when 
he made the switch. That is likely another reason why we are still using the 
same binary that is so ancient. I don't know what the difference is, but 
everything else I've compiled has had syntax conflicts with one package or
another (if it even boots correctly to begin with). IIRC, UClibc-team has made
several corrections when they were first starting the project. I also seem to
recall that they are using BB-Ash, so this is likely the best place to look at 
using a different (and compatible) shell.
-- 
~Lynn Avants
Linux Embedded Appliance Firewall Developer
http://leaf.sourceforge.net
http://guitarlynn.homelinux.org:81


---
This SF.Net email sponsored by Black Hat Briefings  Training.
Attend Black Hat Briefings  Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com

___
leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel