Age | Commit message (Collapse) | Author |
|
|
|
&3, turn a switch/case into if/else.
|
|
|
|
|
|
|
|
|
|
|
|
(Really, checking the original file date is the Right Thing, but I
haven't written it yet.)
|
|
programs not yet in toybox.)
|
|
|
|
|
|
|
|
|
|
options isn't very interesting anymore.
|
|
|
|
|
|
I've reduced the use of malloc(), dropped an extra function call, and
-at least in theory- allowed proper handling of non-regular files.
(If we have a file we can't read, we still should record it when it's
of a type where file content is ignored).
|
|
terminals
|
|
|
|
This version can archive and extract directories, sockets, FIFOs, devices,
symlinks, and regular files.
Supported options are -iot, -H FMT (which is a dummy right now).
It only writes newc, and could read newc or newcrc.
This does NOT implement -d, which essentially is equivalent to
mkdir -p $(dirname $FILE)
for every file that needs it.
Hard links are not supported, though it would be easy to add them given
a hash table or something like that.
I also have not implemented the "<n> blocks" output on stderr.
If desired, I can add it pretty simply.
There is one assumption this makes: that the mode of a file, as mode_t,
is bitwise equivalent to the mode as defined for the cpio format.
This is true of Linux, but is not mandated by POSIX.
If it is compiled for a system where that is false, the archives will
not be portable.
|
|
|
|
|
|
block), convert strange fstype inclusion to OLDTOY(), use "<1" arg so calling with no arguments doesn't hang, convert typedef to normal struct.
|
|
|
|
I finally figured out the NTFS labels after reading a rant on how UTF-8 rocks
and how MS switched to UTF16 or UCS1 or whatever. The reason I couldn't grep
for the label (mine was "myntfs") was that it is stored as
"m\0y\0n\0t\0f\0s\0\0" - found another good use for hexdump :)
Notes:
I only have x86 to test on, so there are a couple of places that may need
bswap_{16,32} for endianness. I used a 65k buf instead of toybuf (4k) for
simplicity, but tried to organize it for toybuf if wanted. I have info on
more fs types, to patch with after review. blkid does output for all devices
if 0 args -> read /proc/partitions?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- fix bugs introduced in the cleanups
- inline addrfds() and open_unix_socks() and simplify them
- use xpidfile()
- remove isNetwork from struct logfile
- invert the meaning of facility and level in struct logfile so
that they are automatically correctly initialized
- fix memory leak regarding the filenames of logfiles
- TT.sd was unused
|
|
- fix bugs in previous cleanups
- remove config from struct logfile
- simplify parse_config()
|
|
|
|
- simplify resolveconfig() -> now logger_lookup is also used in syslogd.c
- inline addrfds
- small cosmetical changes in parse_config_file()
|
|
- remove flag macros
- remove some unecessary gotos
- inline open_udp_socks() and getport()
- simplify resulting open_logfiles()
Now in the syslog.conf the port numbers for remote hosts are no
longer allowed to be hexadecimal. If there is need for hexadecimal
port numbers, one can as well accept octal ones and use base 0
in strtoul.
|
|
- Remove structure fd_pair so that sigfd can go into GLOBALS
- Remove struct typedefs
- Inline setup_signal()
- Small fix in Usage message
|
|
|
|
In syslogd.c get the definitions from <syslog.h>. For logger.c we
can't do this as well since it causes multiply defined symbols.
Instead we define a non-static lookup function in syslog.c for
logger.
|
|
|
|
fail with the ubuntu version, I _think_ these are upstream bugs? (Second opinions welcome...)
|
|
strings in sync. (todo: figure out how to make OLDTOY() automatically use macro. Still need the raw version for subset ala cp/mv though.)
|
|
* make help message more like others
* s/TT\.(.)Argu/TT.\1/g
* move environ to toys.h
* simplify failure messages
* clear password before quit
* not check what execve returns
* -lc
|
|
|
|
|
|
|
|
regex with embedded newline, multiple regex without -E.
|
|
|
|
sys_types had used char[_PATH_MAX] for 22-char max strings.
When this is done 48 times, it nearly doubles the size of toybox.
goto should only be used when it is the easiest way to bail out.
That does not mean "when we need to fall back to returning a one-liner
that asks user input", nor is it suitable for looping:
C has while () and do { } while (); for a reason.
valid was called once. As such, it belonged inline.
print_*menu could probably be inlined, but I did not do this yet
in case a table-driven approach works better.
This uses C string concatenation to break an overly long message up,
while not wasting function calls.
|