summaryrefslogtreecommitdiff
path: root/gnu/usr.bin
AgeCommit message (Collapse)Author
2024-04-12gnu/cvs: avoid a harmless configure warningTheo Buehler
Ever since the prehistoric zlib was removed last fall, the configure script would complain because of a missing file: sed: 0: /usr/src/gnu/usr.bin/cvs/zlib/Makefile.in: No such file or directory noticed by deraadt ok bluhm
2024-04-10When rewriting an ELF header (i.e. in strip and objcopy), keep theMiod Vallat
.openbsd.syscalls section with the PT_OPENBSD_SYSCALLS phdr, even though is does not have the ALLOC flag; otherwise the phdr gets rewritten with a size of zero, which prevents the binary from working. ok kettenis@
2024-03-30Provide illop1 instruction encoding as TRAP.Miod Vallat
2024-03-29No longer build the objective-C compiler (cc1obj). Its standard libraryMiod Vallat
(libobjc) had been removed from the build years ago, there is no need to keep the compiler. ok beck@ joshua@
2024-02-08Feed more generated files to the clean target; joint work with naddy@Miod Vallat
2024-02-04Add minimal support for GNU_PROPERTYTheo de Raadt
2024-01-31Swap the r10 and rcx registers in the amd64 trapframe so that thePhilip Guenther
first six entries are in the same order as syscall arguments, such that syscall() can just use the trapframe as the argument vector for mi_syscall() and not need to reorder into another buffer on the stack. This doesn't affect coredump layout or ptrace(2), but does affect kernel crash dumps. Possibility noted during miod@'s cleanup of the MD syscall() implementations ok mlarkin@ kurt@
2024-01-15From "Lorenz (xha)" (me(at)xha.li): teach binutils how to assemblePhilip Guenther
endbr{64,32} "sure" dv@ deraadt@
2024-01-11Add basic support for R_386_GOT32XJeremie Courreges-Anglas
Repairs ld.bfd operations on i386: since the switch to llvm-16 clang emits such relocations (eg one is present in /usr/lib/crtbegin.o). This unbreaks the build of ports/lang/fpc. Help and tests from tb@, ok tb@ kettenis@
2023-12-23Update to perl 5.36.3Andrew Fresh
No changes to perl, as those were already committed for the earlier errata. This just brings documentation and such in line with upstream. ok bluhm@
2023-12-13OSF/1 placed alpha binaries above 4G. This affects our nopie binaries,Theo de Raadt
of which there is only one -- instbin, on the install media. But that is incompatible with the 32-bit offsets in openbsd.syscalls. Move the start of openbsd nopie binaries much lower. ok kettenis
2023-12-07Collect .openbsd.syscalls sections into a new PT_OPENBSD_SYSCALLS segment.Mark Kettenis
This will be used soon to pin system calls to designated call sites. ok deraadt@
2023-11-26Fix read/write past buffer endAndrew Fresh
From upstream commit: From 7047915eef37fccd93e7cd985c29fe6be54650b6 Mon Sep 17 00:00:00 2001 From: Karl Williamson <khw@cpan.org> Date: Sat, 9 Sep 2023 11:59:09 -0600 Subject: [PATCH] Fix read/write past buffer end: perl-security#140 A package name may be specified in a \p{...} regular expression construct. If unspecified, "utf8::" is assumed, which is the package all official Unicode properties are in. By specifying a different package, one can create a user-defined property with the same unqualified name as a Unicode one. Such a property is defined by a sub whose name begins with "Is" or "In", and if the sub wishes to refer to an official Unicode property, it must explicitly specify the "utf8::". S_parse_uniprop_string() is used to parse the interior of both \p{} and the user-defined sub lines. In S_parse_uniprop_string(), it parses the input "name" parameter, creating a modified copy, "lookup_name", malloc'ed with the same size as "name". The modifications are essentially to create a canonicalized version of the input, with such things as extraneous white-space stripped off. I found it convenient to strip off the package specifier "utf8::". To to so, the code simply pretends "lookup_name" begins just after the "utf8::", and adjusts various other values to compensate. However, it missed the adjustment of one required one. This is only a problem when the property name begins with "perl" and isn't "perlspace" nor "perlword". All such ones are undocumented internal properties. What happens in this case is that the input is reparsed with slightly different rules in effect as to what is legal versus illegal. The problem is that "lookup_name" no longer is pointing to its initial value, but "name" is. Thus the space allocated for filling "lookup_name" is now shorter than "name", and as this shortened "lookup_name" is filled by copying suitable portions of "name", the write can be to unallocated space. The solution is to skip the "utf8::" when reparsing "name". Then both "lookup_name" and "name" are effectively shortened by the same amount, and there is no going off the end. This commit also does white-space adjustment so that things align vertically for readability.
2023-11-17Use -mxgot to avoid GOT overflow during build on mips64.Visa Hankala
Tested by deraadt@
2023-11-16set .NOTPARALLEL for AMDGPU tblgen files to tame memory usage on i386Robert Nagy
ok deraadt@
2023-11-14Add missing .PATHJeremie Courreges-Anglas
Reported and suggested by jsing@
2023-11-12append ExtensionDependencies.inc to CLEANFILES only if .OBJDIR != .CURDIRRobert Nagy
2023-11-12TargetMCAs.def is required to be installed in the llvm include dirRobert Nagy
so instead of shipping the file internally, let's generate it and install it with the rest of the headers; unbreaks xenocara build
2023-11-11update build infrastructure for llvm-16.0.6Robert Nagy
2023-11-10remove unused liblldbPluginOperatingSystemRobert Nagy
2023-11-07comment out test that no longer makes sense, as noticed by antonMarc Espie
2010-09-24Perl 5.12.2 from CPANTodd C. Miller
2023-11-06eliminate discrepancies between termcap-generated info and infocmp resultsMarc Espie
(see user_caps(5)) also obviously protects the term name just in case someone wants to have fun with it..
2023-11-06actually, I still need to exit() if infocmp can't be runMarc Espie
2023-11-06system + exit -> execMarc Espie
as noticed by afresh1@ (this should be all for now)
2023-11-06since we're always running info_cmp in the end, remove the wholeMarc Espie
"in case of emergency run info_cmp block" (more efficient: we only parse the entry we need). Keep the small part that creates a dumb terminal on VMS, even though we're not running that. Add an extra state check in the automaton to avoid skipping a tmp_term
2023-11-06simplify logic for $entry in the main termcap loopMarc Espie
2023-11-06always try to run info_cmp at the end if we haven't got what we wantedMarc Espie
This allows terminals with only terminfo capabilities to show up in Term::Cap (like kitty) !
2023-11-06simplify $ENV{TERMCAP} handling: don't bother setting anything ifMarc Espie
the variable doesn't exist
2023-11-06instead of a max number of iterations, record terms that have been seenMarc Espie
in a hash instead. Side effect: we no longer parse the same tc again and again, leading to a smaller result with the same capabilities but no duplicates. (instead of parsing 36 entries for xterm, we end up with 10 entries, as the "tc=" stuff is actually a tree instead of a list: xterm references several intermediate tc that all lead to the same basic list !)
2023-11-06use modern file open instead of GLOBSMarc Espie
2023-11-06get rid of useless evalMarc Espie
use \Q\E to quote stuff around tmp_term, instead of rolling our own in termpat (get rid of termpat)
2023-11-06remove upstream files we don't needMarc Espie
2023-11-06reapply max=64 for nowMarc Espie
2023-11-06update to Term::Cap 1.18, so that we can patch it furtherMarc Espie
as discussed with afresh1@
2023-11-05fix bad path allocation in makeinfoOmar Polo
In one branch of the image handling, the wrong malloc() call was copied-pasted making the allocation possibly smaller than needed. Spotted while building the gcc11 port, libgccjit.info exercise that branch and the write out of bounds was discovered by malloc(). Convert the malloc + strlcpy/cat dance to an asprintf, and while here also fix the leak of the two paths. ok tb@
2023-10-29Make gnu99 the default for gcc 3.3.6 and 4.2.1, not gnu89.Todd C. Miller
While these versions of gcc don't have full C99 support, it is better than defaulting to C89 when building modern software. OK deraadt@
2023-10-28Back out change to make the default -std=gnu99 for now.Todd C. Miller
There has been some unexpected fallout. Requested by deraadt@.
2023-10-26Fix a typo spotted by miod@.Todd C. Miller
2023-10-26Make gnu99 the default for gcc 3.3.6 and 4.2.1, not gnu89.Todd C. Miller
While these versions of gcc don't have full C99 support, it is better than defaulting to C89 when building modern software. OK deraadt@
2023-10-23Do not print "retrieving revision 1.13" while doing cvs diff.Alexander Bluhm
Provide shorter diffs without unnecessary debugging output. Note that this affects cvs installed on the server side. OK deraadt@
2023-10-18Increase max depth for termcapsAndrew Fresh
With the update to ncurses 6.4-20230826 /etc/termcap now needs at least a 36 deep search. Instead, we'll just bump to 64. It seems 32 has been enough since perl 5.001 in 1995, so hopefully this buys us at least another 28 years. "please commit that" deraadt@
2023-10-13Remove ancient version of zlib bundled with GNU cvs.Alexander Bluhm
Avoid false positive in security scan. Removal of embedded zlib ensures that cvs is linked dynamically with /usr/lib/libz.so. We do not want any zlib 1.1.3 from 2001 in our source tree. no binary diff; OK millert@ deraadt@
2001-09-28Latest from Cyclic SoftwareThorsten Lockert
1999-09-10Latest version from CyclicThorsten Lockert
1996-10-18New release from Cyclic SoftwareThorsten Lockert
2023-09-06Use casts to force two function pointers assignements and fix build with ↵Jeremie Courreges-Anglas
clang-16 "looks fine to me" robert@, ok kettenis@
2023-09-06Use -std=gnu89 to fix the build with clang-16Jeremie Courreges-Anglas
This is ancient GNU software that tends to break whenever clang adds more warnings about deprecated features in new languages versions or turns them into errors. Using -std=gnu89 (the defaults for base-gcc) for those packages means we'll probably avoid most new warnings, errors, and possible miscompilations when updating clang. ok robert@
2023-09-06Build with -std=gnu89 to fix the build with clang-16Jeremie Courreges-Anglas
This is ancient GNU software that tends to break whenever clang adds more warnings about deprecated features in new languages versions or turns them into errors. Using -std=gnu89 (the defaults for base-gcc) for those packages means we'll probably avoid most new warnings, errors, and possible miscompilations when updating clang. This fixes the build of libiberty and texinfo with clang-16. ok robert@
2004-05-21GDB 6.1 (excluding .info files)Mark Kettenis