Commit Graph

574 Commits

Author SHA1 Message Date
Mike Frysinger
86a4bfb30a remove all Elf32 hardcodes to make sure the elf handling is 64bit clean 2005-10-02 07:02:16 +00:00
Mike Frysinger
91fbdac6ab svdavidson writes in Bug 459: add support for x86_64 relocations from modutils 2.4.27 2005-10-02 06:44:39 +00:00
"Vladimir N. Oleynik"
39a841cecf change interface to bb_xasprintf() - more perfect for me.
ln.c: error_msg(str)->error_msg(%s, str) - remove standart "feature" for hackers
reduce 100 bytes don't care in sum
2005-09-29 16:18:57 +00:00
Mike Frysinger
62f18e1f20 use the shorter license header 2005-09-24 07:16:29 +00:00
Mike Frysinger
0d4ee68be5 use brief license line 2005-09-24 06:01:57 +00:00
Mike Frysinger
bc48ebd86a initial ppc64 support 2005-09-14 00:07:26 +00:00
Paul Fox
8eeb655661 applying jim bauer's patch to eliminate modprobe's dependency
on /bin/sh.  bug #8.
     0000008: modprobe applet is dependent on having a shell
2005-08-04 18:33:36 +00:00
Mike Frysinger
4d00896d05 use toplevel ARFLAGS and update default ARFLAGS to be quiet 2005-07-27 01:09:24 +00:00
Rob Landley
4f65360a5f Tweak the "pretty lsmod for 2.6" patch to be seperately selectable.
Patch from Takeharu Kato.
2005-05-04 23:55:06 +00:00
Rob Landley
15d3f7f143 Takeharu Kato's patch added 2.6 support to lsmod; this changes menuconfig
dependencies so 2.6 support depends on insmod or lsmod...
2005-05-04 00:25:49 +00:00
Rob Landley
627814bdc3 Takeharu Kato said:
I found that lsmod in busybox does not support linux-2.6.
I fix this issue(it is caused by changes of /proc/modules format).
If you use lsmod in busybox with kernel-2.6, please use this patch.
2005-05-03 22:34:03 +00:00
Eric Andersen
14f5c8d764 Patch from Bernhard Fischer to make a bunch of symbols static
which were otherwise cluttering the global namespace.
2005-04-16 19:39:00 +00:00
Peter Kjellerstedt
540769d566 Corrected the list of section names in add_ksymoops_symbols() so
that the bss and sbss sections can be correctly identified.
2005-03-30 16:36:40 +00:00
Mike Frysinger
354b527e03 amd64 is rela, not rel 2005-03-30 06:29:41 +00:00
Mike Frysinger
63654c1b08 alpha/parisc support 2004-12-26 09:13:32 +00:00
Eric Andersen
7daa076d3e egor duda writes:
Hi!

I've created a patch to busybox' build system to allow building it in
separate tree in a manner similar to kbuild from kernel version 2.6.

That is, one runs command like
'make O=/build/some/where/for/specific/target/and/options'
and everything is built in this exact directory, provided that it exists.

I understand that applyingc such invasive changes during 'release
candidates' stage of development is at best unwise. So, i'm currently
asking for comments about this patch, starting from whether such thing
is needed at all to whether it coded properly.

'make check' should work now, and one make creates Makefile in build
directory, so one can run 'make' in build directory after that.

One possible caveat is that if we build in some directory other than
source one, the source directory should be 'distclean'ed first.

egor
2004-10-08 07:46:08 +00:00
Glenn L McGrath
bdf6319d3a Patch from Egor Duda
Attached patch prevents modprobe from trying to call 'insmod (null)'
whenever nonexistent module is either passed to modprobe via command
line or mentioned in modules.dep

this replaces cryptic error
sh: Syntax error: word unexpected (expecting ")")
with
modprobe: module some-module not found.

egor.
2004-09-24 09:18:55 +00:00
Eric Andersen
45a0513a64 Based on patches from Mike Frysinger, add insmod support for
sparc and ia64 (itanium).

Also, reorganize the insmod architecture support code to be
alphasorted and less messy.

Update the readme to list current insmod arch support.
2004-09-02 23:03:25 +00:00
Eric Andersen
b225e2a76b Fixup some warnings 2004-08-28 00:43:07 +00:00
Eric Andersen
a4d27d2d38 Patch from Rodney Radford adding x86_64 support. 2004-08-19 19:17:30 +00:00
Eric Andersen
807bd846b6 Patch from Mike Castle to cleanup some modutils issues, in
particular making alias support work better.
2004-08-19 18:30:31 +00:00
Eric Andersen
e3a792c80c Only pass modprobe module params with 2.6.x kernel support.
-Erik
2004-08-16 10:22:34 +00:00
Eric Andersen
beaef16315 Christian Ostheimer writes:
Hello,

function build_dep in modprobe.c assumes that dependencies of one module
have not more than 255 chars;
that is not sufficient in kernel 2.6.7 (alsa sound modules). - Below is
a diff that solves the problem for me.

With regards, Christian Ostheimer
2004-08-14 20:57:33 +00:00
Glenn L McGrath
fcf47321d4 Patch from Mike Castle, dont print an empty line (patch modified by me to
change formatting).
2004-08-11 05:56:30 +00:00
Glenn L McGrath
d2c6f9a1f9 Patch from Phil Blundellto improve substring match 2004-08-11 02:32:18 +00:00
Glenn L McGrath
65c8c7ba27 Willian Barsse wrote
"There seems to be a slight problem with the "mod_strcmp" function in
modprobe.c, it scans for the first occurence of the module name in the
"mod_path" variable and expects it to be the last path element. ie
/lib/modules/2.4.22-debug/kernel/fs/vfat in my example. The comparison
will always fail if mod_path contains another substring matching the
module name."

Robert McQueen wrote
"Although William Barsse's patch fixed mod_strcmp for 2.4 kernels, there
was a remaining problem which prevented it from working for me. I've
just tracked it down - when you enable kernel 2.6 module support it
hard-wired the extension to .ko instead of checking at runtime like the
other places where 2.4 differs from 2.6. The attached patch fixes this
for me."
2004-08-11 02:30:30 +00:00
Eric Andersen
44b5758247 William Barsse writes:
fixes two other issues (plus the previous as well) with a 2.4 kernel :

- should be able to modprobe an already loaded module and get 0 return
code :
# modprobe <something> && modprobe <something> && echo "ok" || echo "failed"
....
failed

Well, hope this helps and that I didn't screw up again,
- William
2004-08-03 08:23:33 +00:00
Robert Griebl
36a836d564 Patch from Mike Snitzer <snitzer@gmail.com>:
Support for /etc/modprobe.conf (for 2.6 kernels) should likely be added
to bb's modprobe, see attached patch.

modprobe.conf is just a (even simpler) variant of modules.conf
2004-07-22 00:03:39 +00:00
Robert Griebl
bd8dd1e763 Patch from Mike Snitzer <snitzer@gmail.com>:
Please see the attached patch for the following crash with busybox'
2.6 rmmod support
2004-07-20 18:36:51 +00:00
Robert Griebl
809387fe9e new_process_module_arguments returns 0 on error and 1 if everything went ok
somehow the ! got lost..
symptoms: modules could only be loaded _without_ parameters
2004-07-20 15:43:57 +00:00
Eric Andersen
c0693ed61b Deal with the fact that 2.6.x kernels replace any '-'s in the
module name with a '_'.
 -Erik
2004-07-20 10:05:13 +00:00
Eric Andersen
65659be213 Add missing type for CONFIG_FEATURE_QUERY_MODULE_INTERFACE 2004-07-20 06:09:14 +00:00
Eric Andersen
e8521f14a2 Fixup some cases of "QM_MODULES: not implemented" for both
lsmod and rmmod when using 2.6.x module support
 -Erik
2004-07-13 00:09:34 +00:00
Eric Andersen
5275b1e49f fix a stupid compile error when CONFIG_FEATURE_INSMOD_VERSION_CHECKING
is disabled
2004-06-22 20:10:53 +00:00
Eric Andersen
cb3b9b1fed kill off insmod support for older pre 2.1 Linux kernels,
which are not supported with the current busybox 1.0 release
 -Erik
2004-06-22 11:50:52 +00:00
Eric Andersen
d943837dab Patrick Huesmann writes:
Hi,

    There was some problem with busybox modprobe. For details see
    http://www.busybox.net/lists/busybox/2004-May/011507.html

    I made a patch against busybox-1.00-pre10 to fix that one.

This is a slight variant of Patrick's patch with a slightly
cleaner implementation of mod_strcmp()
 -Erik
2004-06-22 10:43:09 +00:00
Eric Andersen
a6f6a95ba4 oops 2004-05-26 12:06:38 +00:00
Eric Andersen
ee70fa5523 Patch from Yoshinori Sato:
This patch is uClinux-2.4.x for H8/300 module support.
please apply.

--
Yoshinori Sato
2004-05-26 11:38:46 +00:00
Eric Andersen
aff114c33d Larry Doolittle writes:
This is a bulk spelling fix patch against busybox-1.00-pre10.
If anyone gets a corrupted copy (and cares), let me know and
I will make alternate arrangements.

Erik - please apply.

Authors - please check that I didn't corrupt any meaning.

Package importers - see if any of these changes should be
passed to the upstream authors.

I glossed over lots of sloppy capitalizations, missing apostrophes,
mixed American/British spellings, and German-style compound words.

What is "pretect redefined for test" in cmdedit.c?

Good luck on the 1.00 release!

      - Larry
2004-04-14 17:51:38 +00:00
Eric Andersen
7e496a71cf Michael Tokarev, mjt at tls dot msk dot ru writes:
Fix parsing of all tag-value pairs (in modules.conf in particular).
Without this fix, code chokes badly on lines where either value or
both tag+value are missing, like bare
 alias
line, or alias w/o the value like
 alias some-module
(syntactically incorrect, but no need for coredumps either).
2004-04-06 12:06:03 +00:00
Eric Andersen
d298bd1d51 Michael Tokarev, mjt at tls dot msk dot ru writes:
alias 'off' parsing fix.
It is not
 alias off module
it is
 alias module off
2004-04-06 12:05:04 +00:00
Eric Andersen
ba05e79815 Michael Tokarev, mjt at tls dot msk dot ru writes:
Initialize all fields of struct dep_t.
Without that, e.g. `busybox modprobe -v char-major-10-144' *sometimes*
fails this way (strace):

 write(1, "insmod    nvram `\213\f\10\n", 21) = 21

Note the garbage after module name which is taken from the m_options field,
which is not initialized in the alias reading/parsing part.
(Shell properly complains to this command, telling it can't find the
closing backtick)
2004-04-06 12:04:14 +00:00
Eric Andersen
3f47c453da Christian Grigis, christian.grigis at smartdata dot ch writes:
Hello everyone,

Busybox's insmod fails to locate a module when that module is the only one
existing in the /lib/modules directory (with a unique name).

Example:

# find /lib/modules/ -type f
/lib/modules/kernel/drivers/char/bios.o
# insmod bios
insmod: bios.o: no module by that name found
# touch /lib/modules/dummy
# find /lib/modules/ -type f
/lib/modules/kernel/drivers/char/bios.o
/lib/modules/dummy
# insmod bios
Using /lib/modules/kernel/drivers/char/bios.o

As long as there is another file in the /lib/modules directory, insmod
finds it OK.

I tracked the problem down to 'check_module_name_match()' in insmod.c:

It returns TRUE when a match is found, and FALSE otherwise. In the case
where there is only one module in the /lib/modules directory (or more that
one module, but all with the same name), 'recursive_action()' will return
TRUE and we end up on line 4196 in 'insmod.c' which returns an error.
[The reason it works with more than one module with different
names is that in this case there will always be one not matching,
'recursive_action()' will return FALSE and we end up in line 4189.]

Now, from the implementation of 'recursive_action()' and from other
usages of it (tar.c, etc.), it seems to me that FALSE should be returned
to indicate that we want to stop the recursion, so TRUE and FALSE should
be inverted in 'check_module_name_match()'.

At the same time, 'recursive_action()' continues to recurse even after
the recursive call has returned FALSE; again in my understanding and
other usages of it, we can safely stop recursing at this point.


Here is my patch against 1.00-pre8:
2004-04-06 11:56:26 +00:00
Eric Andersen
1daa0c6097 As noted in a patch from Kendrick Hamilton, rmmod was only
half way converted, and still used the old delete_module(),
call rather than a syscall, in one spot.
2004-03-19 21:00:03 +00:00
Eric Andersen
9e458f5b7a Add missing ELFCLASSM for m68k 2004-03-19 12:17:04 +00:00
Eric Andersen
16451a07b4 Only use R_68K_GOTOFF if it is defined 2004-03-19 12:16:18 +00:00
Eric Andersen
c7bda1ce65 Remove trailing whitespace. Update copyright to include 2004. 2004-03-15 08:29:22 +00:00
Manuel Novoa III
21fbe0e375 Patch from OpenWrt. 2004-02-18 10:14:17 +00:00
Eric Andersen
716ccb2635 whitespace cleanup 2004-01-10 11:29:31 +00:00
Eric Andersen
8e2f74f5a7 Woody Suwalski writes:
I have found the problem in modprobe, so here is the promised patch
At the current stage I can use it as modprobe while switching between
2.4 and 2.6 seemlesly...(that is good!)
2004-01-10 11:25:53 +00:00
Eric Andersen
9d65ab2beb Woody Suwalski writes:
accept more then 1 dependency per modules.dep line. Also white space cleanup...
I think that parsing still breaks sometimes, but is mostly functional now.
2004-01-06 00:07:17 +00:00
Eric Andersen
66e21fd161 Fix broken #else 2004-01-05 23:49:37 +00:00
Glenn L McGrath
5c9f0d05b3 Fix debian bug #215612, insmod should be silent on request 2003-12-31 23:20:10 +00:00
Eric Andersen
3b1a74467a re-indent 2003-12-24 20:30:45 +00:00
Eric Andersen
03d8091859 Patch from Woody Suwalski:
Erik, I think we have met online some time ago when I was in Corel/Rebel
    Netwinder project....

Anyway, I would like to use BB on 2.6.0 initrd. 1.00-pre4 works OK, if
insmod is actually presented with a full path to the module. Otherwise -
problems (not to mention conflicts when 2.4 modutil is enabled)

Here are some patches for insmod and modprobe which try to walk around
the default ".o" module format for 2.2/2.4 modules (you have probably
noticed it is now .ko in 2.6 ;-)) Trying to steal as little space as
possible if 2.6 not enabled...

The modprobe is still not perfect on 2.6 - seems to be jamming on some
dependencies, but works with some (to be debugged). Anyway after the
patches it at least tries to work....

Will there be a 1.00-pre5 coming any time soon?

Thanks, Woody
2003-12-19 21:04:19 +00:00
Eric Andersen
e7047887b0 Update modutils with 2.6 module support 2003-12-11 01:42:13 +00:00
Manuel Novoa III
22e1ca382b Add (untested) support for cris, based on the (old) busybox insmod
that axis distributes.
2003-12-04 15:02:57 +00:00
Eric Andersen
61b038accc Steven Seeger writes:
Hey guys. I've found a bug in modprobe where it generates bad strings and
makes sytem calls with them. The following patch seems to have fixed the
problem. It is rather inherited elsewhere, as there seems to be incorrect
entries in the list which results in more dependencies than really exist for
a given call to mod_process. But, this patch prevents the bad text from
going to the screen. You will notice there are cases where lcmd goes
unmodified before calling system.

Please consider the following patch.

Thanks.

-Steve
2003-11-14 02:49:19 +00:00
Eric Andersen
951df20b7e Do a better job of dealing with screwy s390 abi changes 2003-10-21 06:45:29 +00:00
Eric Andersen
acf6c917e2 ccording to this:
http://sources.redhat.com/ml/binutils/2003-01/msg00290.html
The name R_390_GOTOFF was changed to R_390_GOTOFF32.
 -Erik
2003-10-20 05:40:40 +00:00
Glenn L McGrath
350733abb8 Busybox modprobe has a couple of irritating quirks:
- attempting to modprobe a module that is already loaded yields "Failed
to load module", whereas modutils quietly ignores such a request.

 - if a module genuinely can't be loaded due to missing symbols or
similar problems, modprobe doesn't produce any useful diagnostics
because the output from insmod has been redirected to /dev/null.

Here's a patch to address these issue

Patch by Philip Blundell
2003-09-08 00:32:49 +00:00
Glenn L McGrath
759d7ececd To load GPLONLY symbols its is required that CHECK_TAINTED_MODULES be
enabled, if not GPLONLY symbols are ignored.
2003-09-03 00:42:58 +00:00
Glenn L McGrath
c2942f0904 "insmod caches the symbolname in a variable before modifying it and uses
the cached value afterwards." - Jean Wolter
2003-08-31 01:58:18 +00:00
Glenn L McGrath
759515c26a handle GPLONLY symbols 2003-08-30 06:00:33 +00:00
Eric Andersen
bf83355dda Patch from Paul Mundt (lethal) adding sh64 insmod support for busybox 2003-08-13 19:56:33 +00:00
Eric Andersen
4b4e09854c Steven Scholz writes:
the output of lsmod (busybox-1.00-pre2) contains IMHO one "\n" too
    much when using CONFIG_FEATURE_CHECK_TAINTED_MODULE:

    ~ # lsmod
    Module                  Size  Used by    Tainted: P

    ds                      8364   1
    m8xx_pcmcia             5388   1
    pcmcia_core            40736   0 [ds m8xx_pcmcia]

and this patch from Steven fixes the problem
2003-08-06 08:53:13 +00:00
Eric Andersen
b24da33a06 Document CONFIG_FEATURE_INSMOD_LOADINKMEM 2003-07-22 10:16:58 +00:00
Eric Andersen
9c3c38da55 Patch from Terje Kvernes adding quite a lot of missing documentation 2003-07-22 09:59:34 +00:00
Eric Andersen
85e5e72bc1 Remove remaining libc5 support code 2003-07-22 08:56:55 +00:00
Eric Andersen
cb81e6484d Update a bunch of docs. Run a script to update my email addr. 2003-07-14 21:21:08 +00:00
Eric Andersen
e5642119ee Patch from Thomas Cameron:
Hello all,
	    This patch adds more "Help" text to the config system.  Almost
    all applets now have a help entry.  Also, I cleaned up the spacing of
    the existing text so that things are consistent.  This patch is against
    this morning's CVS.

    Thomas Cameron
    CEI Systems, Inc.
2003-07-14 19:37:08 +00:00
Eric Andersen
65e20a33c2 Patch from Kent Robotti adding a bunch of needed docs!
-Erik
2003-07-05 07:52:35 +00:00
Eric Andersen
25ea42de9b Fall back to looking in /lib/modules/modules.dep if
/lib/modules/<kernel version>/modules.dep is missing
2003-06-20 09:57:30 +00:00
Eric Andersen
908e362133 Patch from Andrew Dennison:
I've had some issues with modprobe which I reported a few months ago. This
is still an issue so I decided to sort it out.

The attached diff includes the changes against the unstable cvs tree that
work for me.

Changes are:
mod_process() will report success if the module at the head of the list
loads successfully. It will also report success if any module unloads
successfully.
The net result being that modprobe will succeed in the cases outlined below.
I've also added error reporting to modprobe -r. Previously it would silently
fail (but report success) if the module could not be unloaded.

Andrew
2003-06-20 09:56:37 +00:00
Glenn L McGrath
1b6dfa7066 Rename, to specify kernel 2003-03-30 13:57:26 +00:00
Manuel Novoa III
cad5364599 Major coreutils update. 2003-03-19 09:13:01 +00:00
Eric Andersen
c3b2dbec8c Fix obviously wrong names from older busybox 2003-03-13 18:57:08 +00:00
Eric Andersen
bf77f61d69 Patch from Jason McMullan @ linuxcare.com adding insmod
support for s390 systems.
2003-01-23 06:02:39 +00:00
Eric Andersen
be65c350ae Patch from Artem Egorkine to support the -m option 2003-01-23 04:57:35 +00:00
Eric Andersen
889dd20c69 Patch from Joel Vallier to add modules symbols to the kernel symbol
table in order to obtain better debug output from ksymoops.
2003-01-23 04:48:34 +00:00
Eric Andersen
b1c9469f65 Patch from Robert Schwebel fixing a missing \n 2003-01-11 18:06:02 +00:00
Tim Riker
cf93274663 rmmod -a removed modules recursively 2002-12-14 01:58:59 +00:00
Tim Riker
6fe1960ff5 cleanup 2002-12-13 22:59:15 +00:00
Eric Andersen
c9f20d9fb9 Yet another major rework of the BusyBox config system, using the considerably
modified Kbuild system I put into uClibc.  With this, there should be no more
need to modify Rules.mak since I've moved all the interesting options into the
config system.  I think I've got everything updated, but you never know, I may
have made some mistakes, so watch closely.
 -Erik
2002-12-05 08:41:41 +00:00
Robert Griebl
3ba7ceebfc print an error message if we can't load a module 2002-12-03 22:41:36 +00:00
Aaron Lehmann
a170e1c858 Change if(x)free(x); to free(x); 2002-11-28 11:27:31 +00:00
Eric Andersen
31f9747a23 Fix needless formatting differences vs modutils 2002-10-18 22:14:07 +00:00
Eric Andersen
9060a73159 Doh! I screwed up applying vodz' patch.
-Erik
2002-10-12 04:16:08 +00:00
Eric Andersen
71ae64bdc6 last_patch61 from vodz:
New complex patch for decrease size devel version. Requires previous patch.
    Also removed small problems from dutmp and tar applets.
Also includes vodz' last_patch61_2:
    Last patch correcting comment for #endif and more integrated
    with libbb (very reduce size if used "cat" applet also).
    Requires last_patch61 for modutils/config.in.
2002-10-10 04:20:21 +00:00
Eric Andersen
528649463f Fix missing \n noticed by Robert Schwebel 2002-10-08 09:38:07 +00:00
Eric Andersen
166fa4684f Support module tainting
-Erik
2002-09-16 05:30:24 +00:00
Eric Andersen
2bec97c076 Some CML1 grammar fixes
-Erik
2002-09-01 06:45:55 +00:00
Aaron Lehmann
0df910af49 for some baffling reason tinycc insists that i change this 0 to NULL 2002-08-23 07:45:26 +00:00
Robert Griebl
6859d761d3 - updated a few copyright/left file headers
- documented most of my 0.61 changes in the ChangeLog
2002-08-05 02:57:12 +00:00
Robert Griebl
70112da81a Fixed a bug that I had introduced with the new "options" handling. 2002-07-29 20:28:38 +00:00
Robert Griebl
aead70b4d1 modprobe now also uses "options" from /etc/modules.conf 2002-07-26 15:54:20 +00:00
Robert Griebl
967c3d4406 Fixed two compiler warnings 2002-07-21 17:33:27 +00:00
Robert Griebl
d378c3149c Applied vodz' patches #49 and #50 (with a small correction in runshell.c)
#49: I found one memory overflow and memory leak in "ln" applet.
Last patch reduced also 54 bytes. ;)

#50: I found bug in loginutils/Makefile.in.
New patch have also new function to libbb and
aplied this to applets and other cosmetic changes.
2002-07-19 00:05:54 +00:00
Eric Andersen
b493dec91e David Frascone <dave@frascone.com> noticed two problems. First, modprobe was
trying to call 'insmod -q', which wasn't supported.  Secondly, when modprobe
was fed blank lines from modules.dep, we ended up calling xstrndup(ptr, -1),
which with suitably bad results.  David provided a patch to catch the blank
lines, and I have added insmod -q support.  So modprobe should work again.
 -Erik
2002-07-02 19:14:23 +00:00
Eric Andersen
61f83059c1 Apply vodz' cleanup for insmod buffer overflows, which was cleaner
than my first effort.
2002-06-22 17:15:42 +00:00
Eric Andersen
2d34215456 As noted by Yves Lavoie ing. <yves.lavoie.ing@sympatico.ca>, don't
lose the last letter of the module name.
2002-06-18 05:16:25 +00:00
Eric Andersen
6fb4e4877a Fix buffer overflows noted by Gerardo Puga
-Erik
2002-06-06 14:24:57 +00:00
Robert Griebl
bc28f7a1e1 Cleaned up Erik's fgets -> read patch and fixed a buffer overflow 2002-06-04 19:33:58 +00:00
Eric Andersen
c06391be0d Avoid stack munching stdio implementations.
-Erik
2002-06-04 13:28:43 +00:00
Robert Griebl
3b79370a7d Fixed a realloc bug found by Martin Volf 2002-06-02 09:36:12 +00:00
Robert Griebl
1d4ef2a9e9 Added support for /etc/modules.conf parsing
for now only the 'alias' entries are evaluated
2002-05-28 21:32:10 +00:00
Eric Andersen
8302c43265 Ensure that insmod supports at least one MODULE_INTERFACE
-Erik
2002-05-24 06:59:22 +00:00
Eric Andersen
cffd5022c5 Patch from Magnus Damm <damm@opensource.se> to rework things
greatly, and keep the arch specific relocations together,
fixes R_PPC_ADDR32 handling so powerpc can work, and changes the
tlb tables to be linked lists (again so powerpc can work).
2002-05-24 06:50:15 +00:00
Robert Griebl
236abbfd71 Some cleanups, some size reductions and some buffer overflow checks
Most of it based on ideas from vodz
2002-05-22 23:34:35 +00:00
Robert Griebl
52e8d060a9 Complete rewrite to support stack loading/unloading with proper
handling of duplicates in the dependencies list.
2002-05-14 23:42:08 +00:00
Eric Andersen
864b79791a Patch from Robert Griebl <griebl@gmx.de> to support modprobe -r properly,
merged in with the latest and greatest.
2002-05-03 15:48:26 +00:00
Eric Andersen
26920c6c94 Make verbose and show_only work as expected
-Erik
2002-05-03 15:22:42 +00:00
Eric Andersen
c088c582bf Patch from Robert Griebl <griebl@gmx.de> to ignore the -s flag 2002-05-03 10:34:35 +00:00
Eric Andersen
60e56f5292 Reworked by Robert Griebl <griebl@gmx.de> to support proper
module dependancies.
2002-04-26 06:04:01 +00:00
Eric Andersen
85208e2ab9 Completely rework the config system so that it no longer annoys me to work on
the busybox development tree.  This eliminates the use of recursive make, and
once again allows us to run 'make' in a subdirectory with the expected result.
And things are now much faster too.  Greatly improved IMHO...
 -Erik
2002-04-12 12:05:57 +00:00
Eric Andersen
b1591d1f8b Fix handling of endianness.
-Erik
2002-04-12 00:28:59 +00:00
Eric Andersen
fcffa2cc1a Apply lash_patch35 from vodz, which brings several nice size_optimizations. 2002-04-06 05:17:57 +00:00
Miles Bader
75ce8d7c88 Tweak my credit (ah, vanity...) 2002-04-01 14:25:51 +00:00
Miles Bader
ae28b04ff2 Add support for the NEC v850e processor. 2002-04-01 09:34:25 +00:00
Eric Andersen
6d13964714 Silence some silly warnings
-Erik
2001-12-29 04:15:13 +00:00
Matt Kraai
1f0c43668a Remove == TRUE' tests and convert != TRUE' and `== FALSE' tests to use !. 2001-12-20 23:13:26 +00:00
Matt Kraai
e62dc86bc7 Add support for big-endian ARM (initial patch by Mike Voytovich). 2001-12-14 16:08:17 +00:00
Matt Kraai
8a35c9a557 Add space before module name (noted by Ron Yorston). 2001-11-27 17:28:01 +00:00
Matt Kraai
c8227639db Change strdup calls to xstrdup (patch from Steve Merrifield). 2001-11-12 16:57:27 +00:00
Eric Andersen
7131213460 config.in features patch from Giulio Orsero <giulioo@pobox.com>
with some minor edits from me
2001-11-10 09:53:23 +00:00
Eric Andersen
bdfd0d78bc Major rework of the directory structure and the entire build system.
-Erik
2001-10-24 05:00:29 +00:00
Eric Andersen
1071ccfd25 Force BB_FEATURE_NEW_MODULE_INTERFACE and BB_FEATURE_OLD_MODULE_INTERFACE
to be mutually exclusive
2001-08-22 05:41:57 +00:00
Eric Andersen
ac5dbd193b Fix an _old_ interface problem with a never-used feature. 2001-08-22 05:26:08 +00:00
Matt Kraai
063c1f54ea Simplified version checking. 2001-08-06 14:18:08 +00:00
Eric Andersen
f672c9e62f Silence a silly warning 2001-07-31 22:51:49 +00:00
Eric Andersen
2835efe3da Note that m68k is supported 2001-07-25 16:58:58 +00:00
Eric Andersen
1b06419e60 Cleanup some warnings and a really obvious bug.
-Erik
2001-07-25 07:23:38 +00:00
Eric Andersen
0139ca92ff An initial modproble implementation. Quite suboptimal still,
but it does work...
2001-07-22 23:01:03 +00:00
Eric Andersen
044228d5ec This is vodz' latest patch. Sorry it took so long...
1) ping cleanup (compile fix from this patch already applied).
    2) traceroute call not spare ntohl() now (and reduce size);
    3) Fix for functions not declared static in insmod, ash, vi and mount.
    4) a more simple API cmdedit :))
    5) adds "stopped jobs" warning to ash on Ctrl-D and fixes "ignoreeof" option
    6) reduce exporting library function index->strchr (traceroute), bzero->memset (syslogd)
2001-07-17 01:12:36 +00:00
Eric Andersen
66ca9480c8 Fix a nasty hard to spot bug found by Ralph Siemsen <ralphs@netwinder.org>.
This would cause it to obliterates the end of the strtab section, so
symbol lookups would fail and then it would crash.  Ugh.  This should
fix things for people having trouble with insmod.
2001-06-28 21:36:06 +00:00
Eric Andersen
b4a26e6fc0 For m68k, use __mc68000__ (not __m68k__ ), since that is what the
various m68k compilers seem to actually use...
 -Erik
2001-06-19 15:00:52 +00:00
Eric Andersen
5a9d441b2c Fix up some signed char vs int issues that show up on powerpc. 2001-05-24 14:16:28 +00:00
Eric Andersen
8ae319a322 This patch from Bernhard Kuhn <kuhn@lpr.e-technik.tu-muenchen.de> is based on
the work of Jinux Kim on his "babobox" (derived from busybox-0.42), and enables
kernel module loading and unloading for uClinux/m68k.
2001-05-21 16:09:18 +00:00
Eric Andersen
2416dfc3c9 A compromise solution for insmod 2001-05-14 20:03:04 +00:00
Matt Kraai
9496466044 Follow symbolic links when searching for modules. 2001-05-14 18:27:25 +00:00
Eric Andersen
14d354312a Per suggestion from Vladimir, eliminate check_wildcard_match(), which
was only being used by insmod these days.

Also, I spent a minute adjusting insmod so that it first searches
/lib/modules/`uname -r` and then (if that fails) searches /lib/modules,
which makes bb insmod behave much more like the real insmod, and should
avoid nasty surprises (such as the recent "Modutils vs. Busybox..."
thread).
 -Erik
2001-05-14 17:07:32 +00:00
Eric Andersen
7f3b86e7bf A fix from Larry for a corner case where insmod could end up
doing an xrealloc(0).
2001-04-26 19:29:58 +00:00
Eric Andersen
4f4bcfcd1a Some more cleanups for insmod from Larry.
-Erik
2001-04-25 17:22:32 +00:00
Eric Andersen
f227815c3a Several cleanups from Larry. 2001-04-24 21:41:41 +00:00
Matt Kraai
0f50bca9aa Fix infinite loop and reallocate if too many modules. 2001-04-13 14:40:15 +00:00
Eric Andersen
64c8b1762c Another iteration -- adjust the init_module syscall a bit.
-Erik
2001-04-05 07:33:10 +00:00
Eric Andersen
acc7757312 *** empty log message *** 2001-04-05 06:24:28 +00:00
Eric Andersen
a2a978ae23 Some further syscall adjustments. Split the module syscalls out of
insmod and into libbb. Only enable them for libc5.  glibc and
uClibc don't need them.
 -Erik
2001-04-05 06:08:14 +00:00
Eric Andersen
e76c3b08e1 A number of cleanups. Now compiles with libc5, glibc, and uClibc. Fix a few
shadowed variables.  Move (almost) all syscalls to libbb/syscalls.c, so I can
handle them sanely and all at once.
 -Erik
2001-04-05 03:14:39 +00:00
Eric Andersen
82bb8a2bf8 Patch from Dirk Behme <dirk.behme@de.bosch.com> to
add EM_MIPS_RS3_LE for mips
 -Erik
2001-03-22 19:01:16 +00:00
Eric Andersen
23c1a18126 Per suggestion from Vladimir, no need to initialize these -- let the bss
do it.
 -Erik
2001-03-19 19:28:24 +00:00
Mark Whitley
94fd480bab Applied patch from John Lombardo to fix OOM in insmod. 2001-03-12 23:08:34 +00:00
Mark Whitley
f90c28dd1e Applied patch from Jeff Garzik to getopt-ify rmmod. 2001-03-09 21:49:12 +00:00
Eric Andersen
eba8ed71f0 Patchs from Jeff Garzik <jgarzik@mandrakesoft.com> to cleanup
warnings with glibc 2.2 and use always use xfopen
 -Erik
2001-03-09 14:36:42 +00:00
Eric Andersen
2bf658d5cd This patch, from Quinn Jensen <jensenq@lineo.com>, adds MIPS support
to busybox insmod.  Thanks Quinn!!!
 -Erik
2001-02-24 20:01:53 +00:00
Eric Andersen
afeb96547f Make output match the real lsmod -- print (autoclean) type
stuff first not last.
 -Erik
2001-02-24 19:51:54 +00:00
Eric Andersen
90fe7fea10 Apply a patch from Magnus Damm <damm@opensource.se> to support
powerpc with busybox insmod
 -Erik
2001-02-20 20:47:08 +00:00
Eric Andersen
cbe31dace5 It turns out that DODMALLOC was broken when I reorganized busybox.h
header file usage before the 0.49 release.  To fix it, I had to move
the '#include "busybox.h"' to the end of the list of #include files.
 -Erik
2001-02-20 06:14:08 +00:00
Eric Andersen
02b9f42a27 Patch from Matt Kraai to fix bug #1103. I've tested it,
and it indeed seems to fix things.
 -Erik
2001-02-15 19:07:43 +00:00
Eric Andersen
67991cf824 This patch, put together by Manuel Novoa III, is a merge of work
done by Evin Robertson (bug#1105) and work from Manuel to make
usage messages occupy less space and simplify how usage messages
are displayed.
2001-02-14 21:23:06 +00:00
Eric Andersen
af4ac77d9d Apply a patch from Larry Doolittle to add "-all" and "-none" switches
to multibuild.pl.  I did a little formatting adjustments to make it
_very_ obvious when things stop working.  I also removed the USE_PROCFS
config option -- just do the right thing when USE_DEVPS_PATCH is enabled.
 -Erik
2001-02-01 22:43:49 +00:00
Matt Kraai
dd19c69904 Removed trailing \n from error_msg{,_and_die} messages. 2001-01-31 19:00:21 +00:00
Eric Andersen
8ec10a9483 Fix up copyright msgs. Bump version to 0.49 in preparation for
a release.  Update the website with release details.
 -Erik
2001-01-27 09:33:39 +00:00
Eric Andersen
ed3ef50c23 Fix header file usage -- there were many unnecessary header files included in
busybox.h which slowed compiles.  I left only what was needed and then fixed up
all the apps to include their own header files.  I also fixed naming for pwd.h
and grp.h functions.  Tested to compile and run with libc5, glibc, and uClibc.
 -Erik
2001-01-27 08:24:39 +00:00
Eric Andersen
d5cad14b11 Update the arch-not-yet-supported msg to be more clear. 2001-01-26 02:23:57 +00:00
Eric Andersen
114ad9c753 Fix a stupid bug I introduced yesterday. Doh!
-Erik
2001-01-26 01:52:14 +00:00
Eric Andersen
155c89b0c3 I just wrote 'insmod -o' to close bug#1049. 2001-01-25 04:11:06 +00:00
Eric Andersen
86f3d5bad6 Bug fix and small create_module cleanup from Larry Doolittle to
fix insmod, since I broke var=value args when I getopt'ified it.
2001-01-24 23:59:50 +00:00
Eric Andersen
f5d5e77321 more bugs fixed -- found doing regression testing
-Erik
2001-01-24 23:34:48 +00:00
Eric Andersen
a18aaf1b6a Make insmod understand (and ignore) -L, and convert it to use getopt. 2001-01-24 19:07:09 +00:00
Mark Whitley
59ab025363 #define -> static const int. Also got rid of some big static buffers. 2001-01-23 22:30:04 +00:00
Matt Kraai
70a7855980 Fix symbol table manipulation (report and fix by Larry Doolittle). 2001-01-04 02:00:17 +00:00
Matt Kraai
a9819b2908 Use busybox error handling functions wherever possible. 2000-12-22 01:48:07 +00:00
Matt Kraai
1fa1adea2a Change calls to error_msg.* and strerror to use perror_msg.*. 2000-12-18 03:57:16 +00:00
Matt Kraai
0dab829977 Add missing newlines to error messages. 2000-12-18 03:08:29 +00:00
Eric Andersen
21125543e1 A couple of updates to fix some minor cross compiling issues 2000-12-13 16:41:29 +00:00
Mark Whitley
f57c944e09 Changed names of functions in utility.c and all affected files, to make
compliant with the style guide. Everybody rebuild your tags file!
2000-12-07 19:56:48 +00:00
Eric Andersen
21adca750a Added insmod support for ARM, and lsmod support for older kernels,
thanks to Alcove, Julien Gaulmin <julien.gaulmin@alcove.fr> and
Nicolas Ferre <nicolas.ferre@alcove.fr>.
 -Erik
2000-12-06 18:18:26 +00:00
Matt Kraai
3e856ce428 Stop using TRUE and FALSE for exit status. 2000-12-01 02:55:13 +00:00
Matt Kraai
207061ac0d Fix error messages. 2000-10-23 18:03:46 +00:00
Matt Kraai
2be4797a06 Fix error message. 2000-10-23 17:55:27 +00:00
Pavel Roskin
43f3e6114c Fixes to allow compilation on systems with glibc 2.1.92 2000-09-28 20:52:55 +00:00
Eric Andersen
3570a34de4 Renamed "internal.h" to the more sensible "busybox.h".
-Erik
2000-09-25 21:45:58 +00:00
Eric Andersen
fe4208fe93 modified by Bryan Rittmeyer <bryan@ixiacom.com> to support SH4 2000-09-24 03:44:29 +00:00
Eric Andersen
8c185f9600 Fix for bug #1042 -- applied the patch from Larry Doolittle
<ldoolitt@recycle.lbl.gov> to fix the bug.
 -Erik
2000-09-22 00:38:07 +00:00
Matt Kraai
721119e1db Clean up output. 2000-09-19 05:25:12 +00:00
Eric Andersen
ccb0a9ba88 Formatting cleanup patch from Bryan Rittmeyer <bryan@ixiacom.com>.
-Erik
2000-09-12 16:20:49 +00:00
Eric Andersen
de34e43755 MAke lsmod act just like modutils lsmod, by printing which modules use
other modules, and state info like (deleted) and such.
 -Erik
2000-09-10 16:16:00 +00:00
Eric Andersen
089d12d762 Fix a unterminated string.
-Erik
2000-08-22 05:18:30 +00:00
Eric Andersen
c86e5e6145 Some leftover stuff I forgot to commit for the lsmod change.
-Erik
2000-08-21 19:38:49 +00:00
Eric Andersen
be0dc0d06a lsmod now uses the query_module syscall, rather then /proc
-Erik
2000-08-21 19:25:16 +00:00
Matt Kraai
0f8f7b8a35 Fix bug 1017, which reports that insmod segfaults when /lib/modules doesn't
exist.  Also allow early search termination (per the comments).
2000-08-01 18:16:56 +00:00
Eric Andersen
a5716d3029 Fix from Arne Bernin for return code -- now reflects whether the rmmod
failed or not.
 -Erik
2000-07-28 15:16:37 +00:00
Matt Kraai
27a804246a Centralize handling of --help. 2000-07-19 19:24:01 +00:00
Matt Kraai
2f46b664b7 Add usage messages for applets without them. 2000-07-19 18:01:00 +00:00
Eric Andersen
ae6eae02dd Moved some code and add a coupld #defines to support use of dmalloc.
-Erik
2000-07-19 17:35:54 +00:00
Pavel Roskin
cc8a66b113 Moved functions used by "lsmod" from cat.c to utility.c
Adjusted to make lsmod and sh compilable as standalone apps.
Comment fixes
2000-07-17 20:18:42 +00:00
Matt Kraai
bf181b9338 Extract usage information into a separate file. 2000-07-16 20:57:15 +00:00
Pavel Roskin
ff5a9033f9 Reduced the number of "signed vs. unsigned" warnings.
Sometimes such warnings matter (esp. on PPC with char default to unsigned)
2000-07-14 16:23:32 +00:00
Matt Kraai
d537a95fdb Use errorMsg rather than fprintf. 2000-07-14 01:51:25 +00:00
Eric Andersen
be909b1cd5 Forgot to commit these cleanups it seems.
-Erik
2000-07-11 17:52:22 +00:00
Eric Andersen
9b2297a34e Remove yet more kernel header dependancies.
-Erik
2000-07-10 20:08:44 +00:00
Eric Andersen
999bf72f49 More portability updates. Now compiles cleanly vs glibc, libc5, and uclibc
(except for mkfs_minix and fsck_minix -- and it doesn't yet link vs uclibc due
to missing stuff in the library).
 -Erik
2000-07-09 06:59:58 +00:00
Eric Andersen
bd22ed8067 Update files to reduce dependance on kernel version...
-Erik
2000-07-08 18:55:24 +00:00
Eric Andersen
ef40aa81c5 * Fixed insmod module option parsing for options lacking an '='.
Fix thanks to Marc Nijdam <marc_nijdam@hp.com>
 -Erik
2000-06-26 11:16:22 +00:00
Eric Andersen
8a24a6783a Better error checking in insmod. Remove left over %m's
-Erik
2000-06-22 18:19:31 +00:00
Eric Andersen
bb245ba0c2 Made insmod work with both libc5 and libc6.
-Erik
2000-06-19 19:53:30 +00:00
Eric Andersen
b610615be9 Updates to a number of apps to remove warnings/compile errors under libc5.
Tested under both libc5 and libc6 and all seems well with these fixes.
 -Erik
2000-06-19 17:25:40 +00:00
Eric Andersen
9f16d61408 Added a slightly modified version of Ron Alder's insmod patch.
Very cool stuff.
 -Erik
2000-06-12 23:11:16 +00:00
Erik Andersen
7ab9c7ee52 Lots of updates. Finished implementing BB_FEATURE_TRIVIAL_HELP
which lets you compile out most of the "--help" output, saving
up to 17k.

Renamed mnc to nc.
 -Erik
2000-05-12 19:41:47 +00:00
Erik Andersen
4f3f757d56 Latest and greatest. Some effort at libc5 (aiming towards newlib)
compatability.
 -Erik
2000-04-28 00:18:56 +00:00
Erik Andersen
1d1d95051a More Doc updates. cmdedit and more termio fixes. 2000-04-21 01:26:49 +00:00
Erik Andersen
61677feff7 Upates to include copyright 2000 to everything
-Erik
2000-04-13 01:18:56 +00:00
Erik Andersen
269bba2514 Change BB_FEATURE_USE_DEVPS_N_DEVMTAB to the simpler
BB_FEATURE_USE_DEVPS_PATCH.
 -Erik
2000-03-08 14:50:47 +00:00
Erik Andersen
54969a1f64 Fixed up lsmod so it works with my devmodules kernel driver,
and with /proc.
 -Erik
2000-03-08 06:42:34 +00:00
Erik Andersen
2ac2fae728 Fix bugs related to finding PIDs.
-Erik
2000-03-07 23:32:17 +00:00
Erik Andersen
e49d5ecbbe Some formatting updates (ran the code through indent)
-Erik
2000-02-08 19:58:47 +00:00
Erik Andersen
fac10d7c59 A few minor updates. ;-)
Seriously though, read the Changelog for busybox 0.42,
which this is about to become...
 -Erik
2000-02-07 05:29:42 +00:00
Erik Andersen
d387d01f11 Sync to my local tree 1999-12-21 02:55:11 +00:00
Erik Andersen
021043205c Add in first draft of insmod. Not yet working (but will Real Soon Now(tm))
-Erik
1999-12-17 18:57:34 +00:00
Erik Andersen
6da0ae8183 Minor fixes to rmmod. First pass at insmod (not yet working).
-Erik
1999-12-17 01:08:27 +00:00
Mark Whitley
c144e330c0 Fixed correctness of comment in rmmod.c - MKW 1999-12-17 00:01:46 +00:00
Erik Andersen
3d7e3414da Wrote rmmod for busybox.
-Erik
1999-12-16 23:04:20 +00:00
Erik Andersen
6f23cec5d0 Added lsmod
-Erik
1999-12-15 22:14:12 +00:00