aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | lua: bind get_key() in the syslinux moduleFerenc Wágner2014-03-011-0/+49
| |
* | lua: reactivate the syslinux extension moduleFerenc Wágner2014-03-012-2/+3
| | | | | | | | | | Under Lua 5.2 modules are not expected to set global variables to reduce namespace pollution. Explicit require() is preferred.
* | lua: add the LuaFileSystem libraryFerenc Wágner2014-03-012-0/+297
| |
* | lua: enable dynamic module loadingFerenc Wágner2014-03-012-0/+48
| |
* | sys/module.h: fix some typos in function documentationsFerenc Wágner2014-03-011-2/+3
| |
* | sys/module.h: remove the #ifdef DYNAMIC_MODULE conditionFerenc Wágner2014-03-011-20/+0
| | | | | | | | | | This makes the module_* functions accessible to COM32 modules. MODULE_INIT and MODULE_EXIT are not used anymore.
* | lua: the COM32 API does not support freopen()Ferenc Wágner2014-03-011-0/+2
| | | | | | | | Nor the concept of text vs. binary open mode, so it does not matter.
* | lua: the COM32 API does not support time()Ferenc Wágner2014-03-011-0/+5
| |
* | lua: the COM32 API actually supports exit() of oslibFerenc Wágner2014-03-012-1/+11
| |
* | stdlib.h: provide a stub definition for getenv()Ferenc Wágner2014-03-011-1/+6
| | | | | | | | Which always returns NULL, representing an empty environment.
* | lua: the COM32 API supports only part of iolibFerenc Wágner2014-03-012-0/+25
| |
* | lua: the COM32 API does not provide strcoll()Ferenc Wágner2014-03-011-0/+3
| |
* | lua: use integer arithmeticFerenc Wágner2014-03-016-11/+94
| |
* | lua: the COM32 API does not provide locale.hFerenc Wágner2014-03-011-0/+4
| |
* | lua: explicitly put the console in standard modeFerenc Wágner2014-03-011-0/+4
| |
* | lua: the COM32 API does not provide signal.hFerenc Wágner2014-03-011-0/+6
| |
* | dev.h: get size_t definitionFerenc Wágner2014-03-011-0/+1
| |
* | lua: replace src/Makefile to build Lua as a Syslinux COM32 moduleFerenc Wágner2014-03-011-172/+49
| | | | | | | | | | | | | | | | Start with the src/Makefile in Syslinux before importing Lua 5.2.2. Refresh the core Lua object list based on the original Makefile. Add the new builtin library objects. Temporarily remove the Syslinux extension library objects, as they need adjustments for the new API.
* | lua: import Lua 5.2.2Ferenc Wágner2014-03-01115-10901/+14357
| | | | | | | | | | | | Source downloaded from http://www.lua.org/ftp/lua-5.2.2.tar.gz. The com32/lua directory now matches exactly the source distribution, plus the various Syslinux extension modules and their documentation.
* | core, bios: Move __syslinux_shuffler_size to assemblysyslinux-6.03-pre5H. Peter Anvin2014-02-282-8/+7
| | | | | | | | | | | | | | | | Putting the __syslinux_shuffler_size in a C file by itself caused it to not get included in the core, causing failures. Put it in assembly to make sure it really gets included there. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | shuffler: Actually get the shuffler size sanelysyslinux-6.03-pre4H. Peter Anvin2014-02-275-15/+23
| | | | | | | | | | | | | | | | | | Actually get the shuffler size sanely. At least for now, we are BIOS only, so stub out the functions on EFI (they shouldn't even be compiled for EFI; this stuff should be moved into some kind of BIOS-only directory.) Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | Makefiles: export the firmware type as a cpp variableH. Peter Anvin2014-02-277-9/+13
| | | | | | | | | | | | Export the firmware type as a cpp variable so we can #ifdef. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | core, bios: Incorrect detection of EDD in /core/fs/diskio_bios.csyslinux-6.03-pre3Andy Alex2014-02-261-0/+2
| | | | | | | | | | | | | | DL register is not set to drive number when detecting EDD for drive, so detection may fail. Signed-off-by: Andy Alex <andy at r-tt.com>
* | Merge branch 'syslinux-5.xx'H. Peter Anvin2014-02-261-3/+3
|\ \ | | | | | | | | | | | | | | | | | | Resolved Conflicts: core/init.c Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
| * | bios: Don't truncate memory size needed to 16 bitssyslinux-5.xxH. Peter Anvin2014-02-261-1/+1
| | | | | | | | | | | | | | | | | | | | | We can't truncate the memory size needed to 16 bits *before* we convert it to kilobytes... Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
| * | bios: Fix lowmem checkH. Peter Anvin2014-02-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The lowmem check was backwards and would report error when there wasn't any. This was missed because the Ctrl key check was *also* backwards and so the check would only be done when Ctrl was held down. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | Makefile.private: archive the gnu-efi submodule, too.syslinux-6.03-pre2H. Peter Anvin2014-02-231-0/+4
| | | | | | | | | | | | Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | mk/efi.mk: Add libefi.a dependencyGene Cumm2014-02-221-2/+2
| | | | | | | | | | | | Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
* | | efi: fix up gnu-efi buildGene Cumm2014-02-225-18/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This eliminates the forking and pushes the build under the efi32/ and efi64/ object directories eliminating a build race and preventing the build from breaking as gnu-efi takes a few seconds to complete. Depends on gnu-efi commit 52d88dd Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
* | | gnu-efi: update to ab54e2b4Gene Cumm2014-02-221-0/+0
| | | | | | | | | | | | | | | | | | This allows gnu-efi to be built outside the source tree properly. Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
* | | Makefile: make "make spotless" actually workH. Peter Anvin2014-02-211-11/+17
| | | | | | | | | | | | | | | | | | The other cleaning targets might still have issues... Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: We need -m32/-m64 even when processing assemblyH. Peter Anvin2014-02-211-6/+4
| | | | | | | | | | | | | | | | | | We need to specify -m32/-m64 even when we are processing assembly. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | mk/efi.mk: Disable stack protectorMagnus Granberg2014-02-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Disable the stack protector if on by default. Copied from https://bugs.gentoo.org/show_bug.cgi?id=495146. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: Useless relocation section in PE fileSylvain Gault2014-02-141-18/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to have a relocation section that nothing points at. The image is still seen as relocatable as long as the Characteristics of the FileHeader do not say otherwise. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: PE file size differ from in-memory sizeSylvain Gault2014-02-143-101/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PE headers code_sz and image_sz indicate more or less, the size of the file and the size of the in-memory image. They are now given the right value. In the ELF format, only the program headers are reliable to determine the actually needed part of the file and the in-memory size. The .bss section should always be marked as NOLOAD for ld since its content shouldn't be included into the binary file. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: Remove buggy relocation in PE fileSylvain Gault2014-02-141-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OVMF and probably other UEFI implementation refuse a file with a relocation entry inside the headers. And since the dummy relocation wasn't used at all, better remove it. Moreover, the field base_relocation_table wasn't initialized properly, leading to unpredictable bugs. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: Location, size and alignment of .text sectionSylvain Gault2014-02-141-19/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the generated PE file, the section header for the .text section used to address more than the whole file. Starting at offset 0 (before the end of the headers) is illegal and is rejected by OVMF. Giving a size greater than the actual file size is also illegal and rejected. Moreover, the body of the PE file have to be aligned to at least 512 bytes. Hence, .text need to be aligned as well. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | | efi: Fix PE header field rva_and_sizes_nrSylvain Gault2014-02-142-15/+19
| |/ |/| | | | | | | | | | | | | | | The value of the field rva_and_sizes_nr is used by OVMF to check the consistency of the PE file with respect to the field optional_hdr_sz. It now have the right value. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | pxe: Export the initial stack and PXE(NV) structure, fix pxechnH. Peter Anvin2014-02-135-26/+43
| | | | | | | | | | | | | | | | | | | | Export the initial stack and PXE(NV) structure pointers properly, even for users which need seg:offs. Use this in pxechn.c rather than the already-removed INT 22h AX=000Ah call. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Cc: Gene Cumm <gene.cumm@gmail.com>
* | efi: Suspicious size reduction in emallocSylvain Gault2014-02-131-3/+1
| | | | | | | | | | | | | | | | | | | | | | It could happen on 32 bits architecture that the memory size really allocated could be less than required. On 64 bits, allocate_pages may be called more times than needed. This closes bug #39. Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | Merge remote-tracking branch 'origin/rockridge'H. Peter Anvin2014-02-126-20/+793
|\ \ | | | | | | | | | | | | | | | | | | Resolved Conflicts: com32/include/byteswap.h Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * | iso9660.c did not copy terminating 0 of Rock Ridge namerockridgeThomas Schmitt2013-04-251-1/+1
| | | | | | | | | | | | | | | I noticed that the trailing 0-byte is not copied to the result of iso_readdir(). The function iso_convert_name() does append a trailing 0.
| * | iso9660: use generic get_le32() accessor in SUSP/Rock Ridge codeH. Peter Anvin2013-04-021-12/+7
| | | | | | | | | | | | | | | | | | | | | Use the new get_le32() accessor in the SUSP/Rock Ridge code. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Cc: Thomas Schmitt <scdbackup@gmx.net>
| * | Generic facilities for byteswapping and unaligned referencesH. Peter Anvin2013-04-022-11/+141
| | | | | | | | | | | | | | | | | | | | | For future portability, add functions to access both littleendian and bigendian numbers, and to perform unaligned memory references. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * | iso9660: read littleendian ISO 9660/SUSP numbersH. Peter Anvin2013-04-021-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attached is a patch which switches susp_rr.c from reading the big-endian ISO 9660 and SUSP numbers to reading the little-endian ones. Tested within libisofs on my collection of ISO images. [ hpa: more mastering programs are known which botch the bigendian information than the littleendian information, so most systems only read the littleendian info regardless of the native byte order. ]
| * | iso9660: Avoid arbitrarily large malloc()sThomas Schmitt2013-04-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After explaining the slightly wasteful usage of malloc()/memcpy() with multi-block CE entries, i noticed that i did not install a safety cap on the malloc size. I could not challenge this in practice but only by gdb manipulation. My most CE-happy test image has 3 occasions of multi-block CE. All three only span over 2 blocks each.
| * | iso9660: Add support for Rock Ridge filenamesThomas Schmitt2013-03-314-4/+659
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for parsing SUSP and RRIP records, and support for Rock Ridge filename extensions, thus avoiding the filename limitations (length and character set) of plain iso9660. This will be a part of using UTF-8 for filenames and console. [ hpa: manually rebased to the elflink branch ]
* | | check-gnu-efi: remove bashismH. Peter Anvin2014-02-061-1/+1
| | | | | | | | | | | | | | | | | | &>foo is a bashism, use >foo 2>&1 instead. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | | Merge branch 'syslinux-5.xx'Gene Cumm2014-02-013-2/+76
|\ \ \ | | |/ | |/|
| * | Merge branch 'syslinux-4.xx' into syslinux-5.xxGene Cumm2014-02-013-2/+76
| |\ \