Re: Embedded script 'nologin' breaks individual binaries

2019-04-01 Thread Yann E. MORIN
Denys, All,

On 2019-04-01 17:26 +0200, Denys Vlasenko spake thusly:
> Can't reproduce.
> Fixed in git?

You applied 3193cb56d (libbb: mark scripted_main() as externally visible)
which fixes the issue, see thread:
http://lists.busybox.net/pipermail/busybox/2019-March/087148.html

Thanks! :-)

Regards,
Yann E. MORIN.

> On Fri, Mar 29, 2019 at 10:46 PM Yann E. MORIN  
> wrote:
> >
> > Hello All,
> >
> > The 'nologin' embedded script breaks the build when individual binaries
> > is enabled. The attached minimalist config exhibits the issue:
> >
> > Trying libraries: crypt m
> >  Library crypt is not needed, excluding it
> >  Library m is not needed, excluding it
> > Final link with: 
> > libbusybox: 0_lib/libbusybox.so.1.30.0.git
> > Linking individual applets against libbusybox (see 0_lib/*)
> > 0_lib/sh
> > Linking 0_lib/nologin failed
> > Output of:
> > gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused
> > -Wunused-parameter -Wunused-function -Wunused-value -Wmissing-prototypes
> > -Wmissing-declarations -Wno-format-security
> > -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen
> > -finline-limit=0 -fomit-frame-pointer -ffunction-sections
> > -fdata-sections -fno-guess-branch-probability -funsigned-char
> > -static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1
> > -falign-loops=1 -fno-unwind-tables -fno-asynchronous-unwind-tables
> > -fno-builtin-printf -Os -fpic -fvisibility=hidden 0_lib/applet.c -o
> > 0_lib/nologin -Wl,--sort-common -Wl,--sort-section,alignment
> > -Wl,--gc-sections -L0_lib -lbusybox -Wl,--warn-common
> > ==
> > /tmp/ccIvMFZg.o: In function `main':
> > applet.c:(.text.main+0x20): undefined reference to `scripted_main'
> > collect2: error: ld returned 1 exit status
> > Makefile:718: recipe for target 'busybox_unstripped' failed
> > make: *** [busybox_unstripped] Error 1
> >
> > Regards,
> > Yann E. MORIN.
> >
> > P.S. Please keep my in Cc on replies.
> >
> > --
> > .-..--..
> > |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' 
> > conspiracy: |
> > | +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___
> >|
> > | +33 561 099 427 `.---:  X  AGAINST  |  \e/  There is 
> > no  |
> > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   
> > conspiracy.  |
> > '------^---^--^'
> > ___
> > busybox mailing list
> > busybox@busybox.net
> > http://lists.busybox.net/mailman/listinfo/busybox

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 561 099 427 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: [PATCH] libbb: mark scripted_main() as externally visible

2019-03-30 Thread Yann E. MORIN
Ron, All,

On 2019-03-30 07:47 +, Ron Yorston spake thusly:
> Building with individual binaries enabled fails when embedded
> script applets are included:
> 
>/tmp/ccIvMFZg.o: In function `main':
>applet.c:(.text.main+0x20): undefined reference to `scripted_main'
> 
> Mark scripted_main() as externally visible.
> 
> Reported-by: Yann E. MORIN 
> Signed-off-by: Ron Yorston 

Build-tested-only:
Tested-by: "Yann E. MORIN" 

Thank you for the quick fix! :-)

Regards,
Yann E. MORIN.

> ---
>  include/libbb.h   | 2 +-
>  libbb/appletlib.c | 1 +
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/include/libbb.h b/include/libbb.h
> index e0d5521e4..a20d5e403 100644
> --- a/include/libbb.h
> +++ b/include/libbb.h
> @@ -1347,7 +1347,7 @@ void bb_logenv_override(void) FAST_FUNC;
>  
>  /* Embedded script support */
>  char *get_script_content(unsigned n) FAST_FUNC;
> -int scripted_main(int argc, char** argv);
> +int scripted_main(int argc, char** argv) MAIN_EXTERNALLY_VISIBLE;
>  
>  /* Applets which are useful from another applets */
>  int bb_cat(char** argv) FAST_FUNC;
> diff --git a/libbb/appletlib.c b/libbb/appletlib.c
> index c15014a34..fa19e8488 100644
> --- a/libbb/appletlib.c
> +++ b/libbb/appletlib.c
> @@ -770,6 +770,7 @@ static int find_script_by_name(const char *name)
>   return -1;
>  }
>  
> +int scripted_main(int argc UNUSED_PARAM, char **argv) 
> MAIN_EXTERNALLY_VISIBLE;
>  int scripted_main(int argc UNUSED_PARAM, char **argv)
>  {
>   int script = find_script_by_name(applet_name);
> -- 
> 2.20.1
> 

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 561 099 427 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Embedded script 'nologin' breaks individual binaries

2019-03-29 Thread Yann E. MORIN
Hello All,

The 'nologin' embedded script breaks the build when individual binaries
is enabled. The attached minimalist config exhibits the issue:

Trying libraries: crypt m
 Library crypt is not needed, excluding it
 Library m is not needed, excluding it
Final link with: 
libbusybox: 0_lib/libbusybox.so.1.30.0.git
Linking individual applets against libbusybox (see 0_lib/*)
0_lib/sh
Linking 0_lib/nologin failed
Output of:
gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused
-Wunused-parameter -Wunused-function -Wunused-value -Wmissing-prototypes
-Wmissing-declarations -Wno-format-security
-Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen
-finline-limit=0 -fomit-frame-pointer -ffunction-sections
-fdata-sections -fno-guess-branch-probability -funsigned-char
-static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1
-falign-loops=1 -fno-unwind-tables -fno-asynchronous-unwind-tables
-fno-builtin-printf -Os -fpic -fvisibility=hidden 0_lib/applet.c -o
0_lib/nologin -Wl,--sort-common -Wl,--sort-section,alignment
-Wl,--gc-sections -L0_lib -lbusybox -Wl,--warn-common
==
/tmp/ccIvMFZg.o: In function `main':
applet.c:(.text.main+0x20): undefined reference to `scripted_main'
collect2: error: ld returned 1 exit status
Makefile:718: recipe for target 'busybox_unstripped' failed
make: *** [busybox_unstripped] Error 1

Regards,
Yann E. MORIN.

P.S. Please keep my in Cc on replies.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 561 099 427 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
#
# Automatically generated make config: don't edit
# Busybox version: 1.30.0.git
# Fri Mar 29 22:31:47 2019
#
CONFIG_HAVE_DOT_CONFIG=y

#
# Settings
#
# CONFIG_DESKTOP is not set
# CONFIG_EXTRA_COMPAT is not set
# CONFIG_FEDORA_COMPAT is not set
# CONFIG_INCLUDE_SUSv2 is not set
# CONFIG_LONG_OPTS is not set
# CONFIG_SHOW_USAGE is not set
# CONFIG_FEATURE_VERBOSE_USAGE is not set
# CONFIG_FEATURE_COMPRESS_USAGE is not set
# CONFIG_LFS is not set
# CONFIG_PAM is not set
# CONFIG_FEATURE_DEVPTS is not set
# CONFIG_FEATURE_UTMP is not set
# CONFIG_FEATURE_WTMP is not set
# CONFIG_FEATURE_PIDFILE is not set
CONFIG_PID_FILE_PATH=""
# CONFIG_BUSYBOX is not set
# CONFIG_FEATURE_INSTALLER is not set
# CONFIG_INSTALL_NO_USR is not set
# CONFIG_FEATURE_SUID is not set
# CONFIG_FEATURE_SUID_CONFIG is not set
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
# CONFIG_FEATURE_PREFER_APPLETS is not set
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
# CONFIG_SELINUX is not set
# CONFIG_FEATURE_CLEAN_UP is not set
# CONFIG_FEATURE_SYSLOG is not set
# CONFIG_PLATFORM_LINUX is not set

#
# Build Options
#
# CONFIG_STATIC is not set
# CONFIG_PIE is not set
# CONFIG_NOMMU is not set
CONFIG_BUILD_LIBBUSYBOX=y
# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
CONFIG_FEATURE_INDIVIDUAL=y
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
CONFIG_CROSS_COMPILER_PREFIX=""
CONFIG_SYSROOT=""
CONFIG_EXTRA_CFLAGS=""
CONFIG_EXTRA_LDFLAGS=""
CONFIG_EXTRA_LDLIBS=""
# CONFIG_USE_PORTABLE_CODE is not set
# CONFIG_STACK_OPTIMIZATION_386 is not set

#
# Installation Options ("make install" behavior)
#
CONFIG_INSTALL_APPLET_SYMLINKS=y
# CONFIG_INSTALL_APPLET_HARDLINKS is not set
# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
# CONFIG_INSTALL_APPLET_DONT is not set
# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
CONFIG_PREFIX="./_install"

#
# Debugging Options
#
# CONFIG_DEBUG is not set
# CONFIG_DEBUG_PESSIMIZE is not set
# CONFIG_DEBUG_SANITIZE is not set
# CONFIG_UNIT_TEST is not set
# CONFIG_WERROR is not set
CONFIG_NO_DEBUG_LIB=y
# CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set

#
# Library Tuning
#
# CONFIG_FEATURE_USE_BSS_TAIL is not set
# CONFIG_FLOAT_DURATION is not set
# CONFIG_FEATURE_RTMINMAX is not set
# CONFIG_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS is not set
CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
CONFIG_PASSWORD_MINLEN=6
CONFIG_MD5_SMALL=1
CONFIG_SHA3_SMALL=1
# CONFIG_FEATURE_FAST_TOP is not set
# CONFIG_FEATURE_ETC_NETWORKS is not set
# CONFIG_FEATURE_ETC_SERVICES is not set
# CONFIG_FEATURE_EDITING is not set
CONFIG_FEATURE_EDITING_MAX_LEN=0
# CONFIG_FEATURE_EDITING_VI is not set
CONFIG_FEATURE_EDITING_HISTORY=0
# CONFIG_FEATURE_EDITING_SAVEHISTORY is not set
# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
# CONFIG_FEATURE_REVERSE_SEARCH is not

Re: [PATCH 0/3] infra: make it possible to install without clobbering existing utilities

2018-01-03 Thread Yann E. MORIN
Hello All!

On 2017-12-28 23:49 +0100, Yann E. MORIN spake thusly:
> Even though there is a hint of code preventing installation of applets
> over existing utilities, this is flawed in two ways:
> 
>   - first, the non-clobbering conditional code does not account for
> installation as script wrappers,
> 
>   - second, only one option can be passed to the install script, which
> is not very useful.
> 
> And finally, there is no way to pass additional options to the install
> script when calling 'make install'.
> 
> This series fixes all three issues.

Any feedback on those three patches? ;-)

Regards,
Yann E. MORIN.

-- 
.-..------..
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


[PATCH 1/3] applets/install: respect noclobber for script wrappers too

2017-12-28 Thread Yann E. MORIN
Simplify the handling of --noclobber so that it applies to all types of
installation types, even to script wrappers.

Signed-off-by: "Yann E. MORIN" <yann.morin.1...@free.fr>
---
 applets/install.sh | 20 
 1 file changed, 8 insertions(+), 12 deletions(-)

diff --git a/applets/install.sh b/applets/install.sh
index f6c097e57..4b70df96e 100755
--- a/applets/install.sh
+++ b/applets/install.sh
@@ -77,6 +77,10 @@ install -m 755 busybox "$prefix/bin/busybox" || exit 1
 for i in $h; do
appdir=`dirname "$i"`
app=`basename "$i"`
+   if [ "$noclobber" = "1" ] && [ -e "$prefix/$i" ]; then
+   echo "  $prefix/$i already exists"
+   continue
+   fi
mkdir -p "$prefix/$appdir" || exit 1
if [ "$scriptwrapper" = "y" ]; then
if [ "$swrapall" != "y" ] && [ "$i" = "/bin/sh" ]; then
@@ -90,12 +94,8 @@ for i in $h; do
elif [ "$binaries" = "y" ]; then
# Copy the binary over rather
if [ -e $sharedlib_dir/$app ]; then
-   if [ "$noclobber" = "0" ] || [ ! -e "$prefix/$i" ]; then
-   echo "   Copying $sharedlib_dir/$app to 
$prefix/$i"
-   cp -pPR $sharedlib_dir/$app $prefix/$i || exit 1
-   else
-   echo "  $prefix/$i already exists"
-   fi
+   echo "   Copying $sharedlib_dir/$app to $prefix/$i"
+   cp -pPR $sharedlib_dir/$app $prefix/$i || exit 1
else
echo "Error: Could not find $sharedlib_dir/$app"
exit 1
@@ -123,12 +123,8 @@ for i in $h; do
;;
esac
fi
-   if [ "$noclobber" = "0" ] || [ ! -e "$prefix/$i" ]; then
-   echo "  $prefix/$i -> $bb_path"
-   ln $linkopts "$bb_path" "$prefix/$i" || exit 1
-   else
-   echo "  $prefix/$i already exists"
-   fi
+   echo "  $prefix/$i -> $bb_path"
+   ln $linkopts "$bb_path" "$prefix/$i" || exit 1
fi
 done
 
-- 
2.11.0

___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


[PATCH 3/3] infra: add rule to install without cloberring existing utilities

2017-12-28 Thread Yann E. MORIN
Signed-off-by: "Yann E. MORIN" <yann.morin.1...@free.fr>
---
 Makefile.custom | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Makefile.custom b/Makefile.custom
index 891c9ced7..28d0ef7bc 100644
--- a/Makefile.custom
+++ b/Makefile.custom
@@ -46,6 +46,9 @@ ifeq ($(strip $(CONFIG_FEATURE_SUID)),y)
@echo
 endif
 
+install-noclobber: INSTALL_OPTS+=--noclobber
+install-noclobber: install
+
 uninstall: busybox.links
rm -f $(CONFIG_PREFIX)/bin/busybox
for i in `cat busybox.links` ; do rm -f $(CONFIG_PREFIX)$$i; done
-- 
2.11.0

___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


[PATCH 2/3] applets/install: accept more than one install option

2017-12-28 Thread Yann E. MORIN
Currently, it is impossible to pass more than one option to the isntall
script, so it totally prevents using --noclobber.

Signed-off-by: "Yann E. MORIN" <yann.morin.1...@free.fr>
---
 applets/install.sh | 28 
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/applets/install.sh b/applets/install.sh
index 4b70df96e..1e621e4c4 100755
--- a/applets/install.sh
+++ b/applets/install.sh
@@ -8,6 +8,7 @@ if [ -z "$prefix" ]; then
echo "usage: applets/install.sh DESTINATION 
[--symlinks/--hardlinks/--binaries/--scriptwrapper]"
exit 1
 fi
+shift # Keep only remaining options
 
 # Source the configuration
 . ./.config
@@ -21,18 +22,21 @@ scriptwrapper="n"
 binaries="n"
 cleanup="0"
 noclobber="0"
-case "$2" in
-   --hardlinks) linkopts="-f";;
-   --symlinks)  linkopts="-fs";;
-   --binaries)  binaries="y";;
-   --scriptwrapper) scriptwrapper="y";swrapall="y";;
-   --sw-sh-hard)scriptwrapper="y";linkopts="-f";;
-   --sw-sh-sym) scriptwrapper="y";linkopts="-fs";;
-   --cleanup)   cleanup="1";;
-   --noclobber) noclobber="1";;
-   "")  h="";;
-   *)   echo "Unknown install option: $2"; exit 1;;
-esac
+while [ ${#} -gt 0 ]; do
+   case "$1" in
+   --hardlinks) linkopts="-f";;
+   --symlinks)  linkopts="-fs";;
+   --binaries)  binaries="y";;
+   --scriptwrapper) scriptwrapper="y";swrapall="y";;
+   --sw-sh-hard)scriptwrapper="y";linkopts="-f";;
+   --sw-sh-sym) scriptwrapper="y";linkopts="-fs";;
+   --cleanup)   cleanup="1";;
+   --noclobber) noclobber="1";;
+   "")  h="";;
+   *)   echo "Unknown install option: $1"; exit 1;;
+   esac
+   shift
+done
 
 if [ -n "$DO_INSTALL_LIBS" ] && [ "$DO_INSTALL_LIBS" != "n" ]; then
# get the target dir for the libs
-- 
2.11.0

___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


[PATCH 0/3] infra: make it possible to install without clobbering existing utilities

2017-12-28 Thread Yann E. MORIN
Hello All!

Even though there is a hint of code preventing installation of applets
over existing utilities, this is flawed in two ways:

  - first, the non-clobbering conditional code does not account for
installation as script wrappers,

  - second, only one option can be passed to the install script, which
is not very useful.

And finally, there is no way to pass additional options to the install
script when calling 'make install'.

This series fixes all three issues.


Regards,
Yann E. MORIN.


The following changes since commit 36acc4631c94bb0f43ecaac5d61dc773ef773e91

  ntpd: do run the script at leat once in 11 minutes (2017-12-26 20:19:37 +0100)


are available in the git repository at:

  https://gitlab.com/ymorin/busybox

for you to fetch changes up to 9d1de67bf6b02c1133d35b851ccfcd0c4ff1ba66

  infra: add rule to install without cloberring existing utilities (2017-12-28 
23:12:03 +0100)



Yann E. MORIN (3):
  applets/install: respect noclobber for script wrappers too
  applets/install: accept more than one install option
  infra: add rule to install without cloberring existing utilities

 Makefile.custom|  3 +++
 applets/install.sh | 48 
 2 files changed, 27 insertions(+), 24 deletions(-)

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: shell parsing bug with

2012-09-02 Thread Yann E. MORIN
Rich, All,

On Sunday 02 September 2012 23:21:36 Rich Felker wrote:
 It seems busybox ash is misinterpreting  as having some special
 meaning rather than being a  token followed by a  token.

The  operator is not defined in POSIX. However, reading the bash manpage
gives:

[--SNIP--]
  Redirecting Standard Output and Standard Error
This construct allows both the standard output (file descriptor 1) and
the standard error output (file descriptor 2) to be redirected to the
file whose name is the expansion of word.

There are two formats for redirecting standard output and standard
error:
word
and
word

Of the two forms, the first is preferred.  This is semantically
equivalent to
  word 21
[--SNIP--]

ash can include some bash extensions if configured to. Not sure  is
part of the supported extnesions, though. Maybe you can check this in your
busybox configuration.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Is there a detailed manual for busybox's ash?

2012-06-25 Thread Yann E. MORIN
Walter,

On Monday 25 June 2012 20:36:50 Walter Dnes wrote:
   I've got automount (and auto-unmount) working with mdev.  Right now,
 the code is in a bash script.  It's intended for use in Gentoo linux.
 But I could see others being interested in it.  For maximum portability,
 I figure that the script should be in busybox ash.  I.e., if you've got
 busybox mdev, you have busybox, and therefore busybox ash.  I can
 imagine that some lightweight systems would try to avoid having another
 shell like bash.
 
   I'd like to re-do the automount script in ash, but I don't have any
 idea where to find detailed busybox ash syntax documentation.  A Google
 search for busybox ash documentation turns up... a whole bunch of other
 people asking where to find detailed busybox ash syntax documentationG
 
   Any pointers?

ash implements (at least) a POSIX shell. POSIX is defined there:
  http://pubs.opengroup.org/onlinepubs/9699919799/toc.htm

The page specific to the shell is:
  http://pubs.opengroup.org/onlinepubs/9699919799/toc.htm

The page specific to the shell language is:
  
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18

In any case, I now only use POSIX constructs for shell scripts I intend to
be portable, and/or to be 'embedded'. This (somewhat) guarantees that I can
run the scripts on my desktop machine, and on my embedded system(s), without
having to care about the actual shell ( heck, no, I do not care about csh or
zsh, or any non POSIX-compliant shells :-] )

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


kconfig-frontends: a packaging of the kconfig language

2012-03-19 Thread Yann E. MORIN
Hello All!

I am glad to announce the kconfig-frontends' first release ever!

kconfig-frontends-3.3.0-0 was released today, right after the corresponding
Linux kernel was released! Go download it there:

  
http://ymorin.is-a-geek.org/download/kconfig-frontends/kconfig-frontends-3.3.0-0.tar.xz

The kconfig-frontends (temporary) home is at:

  http://ymorin.is-a-geek.org/projects/kconfig-frontends

The kconfig-frontends project aims at centralising the effort of keeping an
up-to-date, out-of-tree, packaging of the kconfig infrastructure, ready for
use by third-party projects.

The kconfig-frontends package provides the kconfig parser, as well as all
the frontends, packaged using the traditional autotools, so the kconfig
infrastructure is easy to deploy, either locally or system-wide.

What you get with kconfig-frontends:
  - all five frontends: conf, mconf, nconf, gconf and qconf
  - a shared and/or static library and the headers for the parser, so any
one can build their own frontend
  - the standard ./configure  make  make install dance
  - an easy way to sync from a newer kernel
  - a bit of documentation

kconfig-frontends is not meant to replace the in-tree Linux kconfig (at
least in the foreseeable future!), but really targets third-party projects
that want an easy path to following the evolution of kconfig, without the
burden to manually synchronise occasionally.

The plans for the future are:
  - release with every Linux kernel dot-0 release
  - release with every Linux kernel dot-release if there are kconfig fixes
  - release to fix blocking issues with the packaging
  - find a proper home (mid-term)
  - migrate the repository to git (short-term)
  - improve the documentation!

Any comment, any feedback is welcome! ;-)

Note: kconfig-frontends is only about the kconfig language: the parser and
the frontends; it's not about kbuild, the Linux kernel build infrastructure.

I am sending this news to all projects I know of, that are using the kconfig
language, or a derivative, as their configuration infrastructure, in the
hope they find this news interesting. This is a one-off email, and no further
announcement will be sent to your projects mailing-lists unless you express
interest in future such announcements.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Ash eval wierdness

2011-05-25 Thread Yann E. MORIN
Nigel, All,

On Wednesday 25 May 2011 162459 Nigel Hathaway wrote:
 I'm trying to import a set of variables from a file containing assignments
 of the form a=b, one on each line. I am finding that the variable
 assignments are being lost.
 
 Here is a simplified version of my script which illustrates the problem:
 
 echo myvar=my value | while read opt; do 
 if echo $opt | grep -q '='; then
 var=`echo $opt | /bin/sed s/=.*//`
 val=`echo $opt | /bin/sed s/[^=]*=//`
 eval $var=\'$val\'
 echo (1) $var=\'$val\'
 echo (2) myvar=$myvar
 fi
 done
 echo (3) myvar=$myvar
 
 Which yields this:
 
 (1) myvar='my value'
 (2) myvar=my value
 (3) myvar=
 
 I am using Busybox v1.18.4
 
 Any idea what is going on?

That's expected. All that is to the right part of the pipe is running in a
sub-shell. So the evaluation is done in a sub-shell. So it is lost as soon
as this sub-shell ends.

Regards,
Yann E. MORIN.

PS. Nigel, sorry for the duplicate, previous mail sent form the wrong
address, so got refused by the ML.
YEM.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== O_o ==-- '.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
'--'---'--''
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Ash eval wierdness

2011-05-25 Thread Yann E. MORIN
Nigel, All,

On Wednesday 25 May 2011 165635 Nigel Hathaway wrote:

Please, don't top-post. Write below the text you are replying to, it's
easier to follow and understand. Also, please wrap long lines to below
80 chars length.

 Do you know what the solution is?

Why do you need to add 'eval' in front of lines?
Does your input file contain only affectations, or other stuff?
Are affectations in this file properly escaped?

It all depends. If you have only affectations, and they are properly escaped
and/or quoted, then just source the file (notice the leading dot):
  . ${my_file}

If not, then pre-process the file, stick 'eval' where it is due, escape
and/or quote where needed, and source the resulting file.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== O_o ==-- '.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
'--'---'--''
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Keyboard tables with string definitions and diacriticals

2011-03-22 Thread Yann E. MORIN
Harald, Denys, All,

On Tuesday 22 March 2011 17:24:09 Harald Becker wrote:
  Can we improve Busybox and add those functionalities? Attention:
  Modifications at this point probably introduces an incompatibility to
  current Busybox versions, ...
  The best way would be to evolve tovards using data formats
  and command-line options which are compatible with relevant
  standard tools.
 
 That would be the loadkeys command and the keyboard table format
 described in the keymaps(5) manual page. ... but that one is an ASCII
 source table that needs complex parsing. That parsing, including dynamic
 table handling, would require a lot of code and data space. I don't
 think that this really hit's the Busybox keep it small philosophy.

What about the following:
- busybox applet that loads binary tables as you suggest
- script in the busybox source that converts an ASCII table into its
  binary equivalent

 The standard tool loadkeys has an option -b to create the the binary
 key tables required by Busybox.
[--SNIP--]
 The standard tools loadkeys -b option is especially designed to create
 binary key tables in the format required by Busybox (see loadkeys manual
 page).

Sorry, my loadkeys man page does not document '-b':
$ loadkeys --version
loadkeys: (console-tools) 0.2.3

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: env question

2010-12-08 Thread Yann E. MORIN
Christopher, Loic, All,

On Wednesday 08 December 2010 21:41:14 Loïc Grenié wrote:
 2010/12/7 Christopher Barry christopher.ba...@rackwareinc.com:
  I've tried doing:
  #!/usr/bin/env - /bin/bash
  and
  #!/usr/bin/env -i /bin/bash
 
  at the top of a script to clear out it's environment prior to running
  it, but it throws an error.

This is normal behavior. The sha-bang ( #! ) expects the name of the
executable to run, plus one and only one one parameter.

In your case, that one parameter is interpreted as being: '-i /bin/bash'
That is, argv[1] point to a string that contains -i /bin/bash

What you would expect is that argv[1]==-i and argv[2]==/bin/bash
That is not possible.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Question about symlinking to busybox

2010-09-16 Thread Yann E. MORIN
Harald, Vladimir, All,

On Thursday 16 September 2010 18:29:04 Harald Becker wrote:
 On 16.09.2010 18:12, Vladimir Dronnikov wrote:
  Why don't you create a single symlink
  pointing to the absolute path of busybox and do hardlinks to the symlink
  for the remaining applets?
  E.g. /sbin, /bin, /usr/sbin, /usr/bin can be on various filesystems,
  thus hardlinking will fail
 In that case you just need a single symlink on each filesystem ... and
 how much systems do you know those directories are on different
 filesystems today?

In my case, I have a device where / and /usr are both on different file
systems. / contains only what is needed to boot up the machine, while /usr
contains all the applications that makes the device perform its purpose.
Thus it is easy to update only the application side, and / is never touched.
But in this case, there's not busybox links in /usr, all have gone to /
as hardlinks. Avoids the cross-filesystem issue, and saves inodes.

Of course, on very small systems (I mean with very litle flash space),
and/or systems that will never be upgraded in the field, using two FS
might be overkill, or yet impossible due to space constraints.

But yes, it does happen.

The issue is different on desktop machines, where you usualy upgrade the
full system at once, and thus /usr being a separate partition is not
really usefull any more, now that HDDs are very, very much bigger than
the OS itself. In the good old days, /usr may had gone to a separate
_disk_, but having it on a separate _partition_ on the same disk is
almost always non-sense^Wuseless nowadays.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'


___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: error cross-compiling to ARM

2010-08-28 Thread Yann E. MORIN
Salim, All,

On Saturday 28 August 2010 12:47:45 Salim Tyrewala wrote:
 I'm new to busybox. I'm having trouble cross-compiling busybox to ARM
 using arm-elf-gcc. It doesn't find some include files byteswap.h for
 instance.

arm-elf-gcc is a bare-emtal toolchain. You won't be able to build busybox
with such a toolchain. A bare-metal system is a system that runs without
any kernel.

You need a toolchain that targets a Linux-based system. Such toolchain will
have a tuple in the form: arm-unknown-linux-gnu, arm-linux-gnu, or even
arm-linux. Which would give a cross compiler named like:
arm-unknown-linux-gnu-gcc, arm-linux-gnu-gcc or arm-linux-gcc.

The 'gnu' in the tuple means that it is based on the GNU C library glibc.

It can happen also that the tuple be something like: arm-unknown-linux-uclibc
to denote that it is based on the uClibc C library instead of glibc.

 I'm not sure what is happening differently when I cross-compile. Why
 isn't the include path include /usr/include where it should find all
 the headers?

Because those headers are not looked for by a cross-toolchain. A cross-
toolchain has its own set of headers. Those headers come from the kernel
and C library used to build the cross-toolchain, and can widely differ
from those used to build your native toolchain (eg. glibc vs. uClibc, or
a different kernel headers version...)

 I think I'm doing something stupid. Please help!

You can use a proper cross-toolchain targetting Linux. There are pre-built
such toolchains available, see for example Tito's suggestion to use
Code Sourcery's. You can even build your own, either manually (which is
very, very, very complex, and which I do not recommend for a beginner).
or using crosstool-NG or buildroot to build your toolchain.

Crosstool-NG will only build the toolchain, while buildroot can also build
a complete system for you, from the toolchain to the kernel, to busybox
to X.

For a newcomer to cross-compilation, I'd recommend either a pre-built
toolchain (eg. Code Sourcery's) or buildroot.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'


___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: Busybox and GPL

2010-08-07 Thread Yann E. MORIN
All,

On Saturday 07 August 2010 04:16:04 Vic wrote:
  In your (and other readers') personal opinion, is it good or bad
  that we are getting this kind of PR?
 Overall - good.

Fully agreed.

 There are still people who believe that GPL means public domain. These
 people need to be disabused of this erroneous belief.
 At the same time, there are those that believe that GPL covers absolutely
 everything in the aggregation. These people also need to be shown the
 error of their ways.
 Unfortunately, there are some who will only take away the message that
 BusyBox has a legal risk to it. They conveniently forget that abusing the
 licence of a proprietary piece of software is far more likely to land you
 in legal difficulties...

I would not have said it better than Vic did! :-)

  One important detail that the company which was violating GPL
  in this particular case is bankrupt at the moment; do we look bad
  by making its life even harder? -
 We run the risk of looking irrelevant; it looks like a Pyhrric victory.

As far as I understand, the company was not goinf bankrupt at the time
the initial 'discussions' were started.

  Westinghouse Digital Electronics was also ordered to hand over
  equipment in its possession that contained GPL code
  and forbidden to distribute devices which contained
  the BusyBox software.
  Your thoughts?
 We need to watch for web sites discussing this case, and be ready to
 correct any flagrant nonsense in both articles and in comments. Some of
 this will be ignorance, some astroturfing :-(

The point being, that the stuff will be given to _charity_. And the $90,000
figure for _triple_ damages is not very high, if we compare that to damages
granted for even non-wilfull infringement to proprietary stuff (although I
do not have figures out of my head right now, we have to get one for, say
MS or ScO, just to compare)

The groklaw article is very interesting:
  http://www.groklaw.net/article.php?story=20100803132055210

Regards,

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN |  ___   |
| +33 223 225 172 `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
'--^---^--^'
___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: ash acts like init

2009-03-28 Thread Yann E. MORIN
Hello Casty and all,

On Saturday 28 March 2009 23:02:34 ca...@centolos.com wrote:
 I'm trying to run ash as the init process in the kernel parameters
 (init=/bin/ash). But when I run it, it reads the /etc/inittab. I tried
 rebuilding busybox with init disabled, but the only thing I got was an
 init: applet not found error.
 I don't understand the internal process in bb, but it looks like when pid
 is zero, it ignores argv[0] and acts like init yes or yes.
 Is there any way to get ash to act as ash when called directly from the
 kernel?

For some architectures, the kernel has a hard-coded value for its command
line, that can not be overriden. Moreover, 2.6.29 offers this possibility
for all architectures now.

Double-check that this is not the case.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |  ___   |
| --== ^_^ ==-- `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
`--^---^--^'

___
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


Re: shell script implementation of man

2008-11-19 Thread Yann E. MORIN
Hello Matthew!
Hello all!

On Wednesday 19 November 2008 16:58:15 Matthew Hiles wrote:
 msh does not appear to support
 $() style command substitution, it does support backticks. I've
 changed the script and it appears to work with msh without any issues.

Do not forget that back-ticks are not POSIX, while $() is. Even bash
considers the use of back-ticks (backquotes) to be /old-style/.

I'd say that such shell scripts should be POSIX compliant. That sure
rules out non-POSIX shells, but is standards-compliant.

My 2 cents.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |  ___   |
| --== ^_^ ==-- `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
`--^---^--^'

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: shell script implementation of man

2008-11-19 Thread Yann E. MORIN
Paul,
All,

On Wednesday 19 November 2008 18:28:33 Paul Smith wrote:
 On Wed, 2008-11-19 at 18:01 +0100, Yann E. MORIN wrote:
  Do not forget that back-ticks are not POSIX, while $() is.
 Uh... what?!?!  That's absolutely not true.  Backticks are
 unquestionably defined in the POSIX sh definition.  They are not marked
 as old or deprecated or anything similar.

Woops... Sorry... I was too quick and didn't check. I thought I read that
somewhere, but couldn't find it again. I just checked with:
http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02
and you're right.

Next time, I won't trust my memory without checking first. Sorry.

 It's easier to nest command substitutions with $() and there is a very
 slight difference in handling backslashes, but otherwise there is no
 difference between them.

Yes.

  Even bash considers the use of back-ticks (backquotes) to
  be /old-style/.
 They don't mean it in a pejorative sense. They just mean it as a 
 description: it _IS_ old-style.  But that doesn't make backticks wrong
 or bad or to be avoided.  Full quote:
 When the old-style backquote form of substitution is used, ...

I didn't mean it was pejorative. I was just using /old-style/ as quoting
the bash manual.

 Since `` is perfectly standards-compliant AND it's far more portable
 than $(),

What makes you say it's /far more portable than $()/ ? Is that because $()
was introduced after `` (if so is the case)?

 I don't see any reason to avoid `` except as a matter of 
 style.

Right. I do apologise.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |  ___   |
| --== ^_^ ==-- `.---:  X  AGAINST  |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|   v   conspiracy.  |
`--^---^--^'

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: inittab

2008-09-02 Thread Yann E. MORIN
Sebastien,
All,

On Tuesday 02 September 2008 23:08:44 Sébastien Chrétien wrote:
 Where can I find a inittab model ?

examples/inittab seems a good place to start. :-)

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== ^_^ ==-- `.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL|conspiracy.  |
`--^---^--^'

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: splash image during boot - new applet?

2008-02-05 Thread Yann E. MORIN
Hello Michele!
Hello all!

On Tuesday 05 February 2008 12:12:25 Michele Sanges wrote:
 Only for test, I have create an iso image of a little linuxbox, wich
 show how the splash works. 

To maximise chances that the splash applet is accepted in BusyBox, please
pay attention to the size. The binary in the initrd is 622KiB. So, it is
statically linked and unstripped. Stripped, it goes down to 556KiB, but even
though, it still is a big baby.

Be carefull, such a big applet will most probably be dumped.

If you posted your code, we could review it and try to shrink it before you
submit it for inclusion.

Regards,
Yann E. MORIN.

PS. I don't usually pay much attention to applets, but that one appeals to me
somewhat, I will try to give it a look although I moving house this month.
YEM.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | * _ * | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: Question about insmod/busybox

2007-11-02 Thread Yann E. MORIN
Hello Khem!

Would have been great if you had CCed the busybox mailing list. :-|

So first thing you have to know: I don't know much of the insmod code. I
maintain the modprobe code when bugs arise, but insmod (at least for 2.4)
is too complex for me (plus I don't use 2.4 any more, and 2.6 is clean).

On Thursday 01 November 2007 20:18:17 Khem Raj wrote:
 I have a question for you about busybox/insmod. I am modifying this so
 that it can load more than one module in one invocation.
 In such a scenario I get a kernel crash after a while when I try to
 insmod 50 modules.

 If I write a shell script which calls insmod 50 times to insert modules
 one by one it works.

That is exactly what I would have suggested: create a script that loops
and calls insmod for each module.

 The modification I do to the insmod is a wrapper which calls
 insmod_ng_main () in a while loop and does the argv processing.

I would say: don't do that, unless the real insmod understands more than
one module as arguments, which I highly doubt.

We try to maintain a compatible API between original applications and
the corresponding applets in busybox.

 In this scenario a kernel oops is triggered.
 Now I want to know if insmod is written assuming that only 1 module is
 installed in that case it will not free the malloc'ed memory and this is
  being caused by memory leak or if there is real problem in kernel.

Could well be that you did not activate CONFIG_FEATURE_CLEAN_UP or/ insmod
does not cleanly handle memory. I guess Denys would be able to tell if insmod
is NOFORK-clean. Denys?

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Re: libbusybox is back; individual mode is introduced

2007-10-09 Thread Yann E. MORIN
On Tuesday 09 October 2007 23:41:48 Bernhard Fischer wrote:
 On Tue, Oct 09, 2007 at 11:35:09PM +0200, Yann E. MORIN wrote:
 
 Breaks when cross-compiling (at least for ARM) on a x86_64:
 
 The reason is that we should use the cross-strip, rather than the native one,
 in scripts/trylink. Patch attached.
 
 -strip -s --remove-section=.note --remove-section=.comment $EXE -o 
 $sharedlib_dir/libbusybox.so.$BB_VER
 +$STRIP -s --remove-section=.note --remove-section=.comment $EXE -o 
 $sharedlib_dir/libbusybox.so.$BB_VER
 
 This, too will fail unless you use a strip that accepts said arguments.
 Didn't we have a $(STRIPCMD) that contained $STRIP plus eventual args?

If we ever had it, it stayed in limbo, but... I seem to recall we had such
a beast as make macros that would check arguments against a command, and
return the argument if supported, or an alternative (or empty)...

The only two incarnations of $STRIP I could find are (spaces squeezed to fill
in a single line):

# grep -r \\\$\\\(STRIP .
Makefile: $(Q)$(STRIP) -s --remove-section=.note --remove-section=.comment \
scripts/Makefile.IMA: -$(STRIP) -s -R .note -R .comment -R .version $@

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: Insmod problem with busybox 1.4.2

2007-09-24 Thread Yann E. MORIN
Evert,

On Monday 24 September 2007 21:41:06 Evert Meulie wrote:
 Eehh, that is exactly what I did. My command was:
 insmod -f bs.ko
 (bs.ko was present in the current directory)
 insmod: -f.ko: no module by that name found
  Usage: insmod [OPTION]... MODULE [symbol=value]...
  Options:
  -f  Force module to load into the wrong kernel version

Rings a bell here...

If you enable 2.4 support, insmod will try to mimick the behavior of insmod
from mainstream modutils.

If you disable 2.4 support (and obviously enable 2.6), then insmod will mimick
the behavior of mainstream module-init-tools. insmod from module-init-tools
does _not_ have a -f option.

What kernel version are you running: 2.4 or 2.6 ?
 - If 2.4, then you mis-configured BusyBox (afaics).
 - If 2.6, then you can not force-load a module (afaik).

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: svn commit: trunk/busybox/docs/busybox.net

2007-08-24 Thread Yann E. MORIN
Hello!

On Friday 24 August 2007 16:31, [EMAIL PROTECTED] wrote:
 Author: aldot
 Date: 2007-08-24 07:30:59 -0700 (Fri, 24 Aug 2007)
 New Revision: 19688
 Log:
 - obfuscate addrs a little bit
[--SNIP--]
   limodprobe: add scanning of /lib/modules/`uname -r`/modules.symbols 
 (by Yann E. MORIN)

While you are at it, would you mind adding my email address, please?

Regards,
Yann E. MORIN.

PS. Can't remember who aldot is. I think it's you, Bernhard.
Apologies if I have it wrong...
YEM.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox


Re: nfs mount

2007-06-15 Thread Yann E. MORIN
On Friday 15 June 2007 15:09, Michael Cashwell wrote:
 In the case at hand, the NFS file system would not be a child of RPC so
 the file system list would be complete. The NFS item would be visible
 but grayed out and we'd be able to find it and see what its dependencies
 are.

Or better yet, have NFS select RPC: forward dependency rather than
backward dependency.

This is a somewhat recurent problem, so here's a patch.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°
Index: busybox/util-linux/Config.in
===
--- busybox/util-linux/Config.in	(revision 18825)
+++ busybox/util-linux/Config.in	(working copy)
@@ -363,7 +363,8 @@
 config FEATURE_MOUNT_NFS
 	bool Support mounting NFS file systems
 	default n
-	depends on MOUNT  FEATURE_HAVE_RPC
+	depends on MOUNT
+	select FEATURE_HAVE_RPC
 	select FEATURE_SYSLOG
 	help
 	  Enable mounting of NFS file systems.
___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Re: insmod path search

2007-05-25 Thread Yann E. MORIN
Matteo, Mike, Bernhard,
All,

On Friday 25 May 2007 22:13, Mike Frysinger wrote:
 On Friday 25 May 2007, Bernhard Fischer wrote:
  No. If you want a module loader that searches for mods, there's modprobe.
 agreed

OK. Closing the associated bug report.

Thank you for comments.

Regards,
Yann E. MORIN.

-- 
.-..--..
|  Yann E. MORIN  | Real-Time Embedded | /\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN |   ^|
| --== °_° ==-- °.---:  X  AGAINST  |  /e\  There is no  |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL|conspiracy.  |
°--°---°--°°

___
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox