Home | History | Annotate | only in /src/usr.bin/dc
History log of /src/usr.bin/dc
RevisionDateAuthorComments
 1.7 19-Oct-2025  riastradh openssl: Stop dragging libpthread into every libcrypto user.

With the new _NETBSD_PTHREAD_CREATE_WEAK, libcrypto can have a call
to pthread_create without linking against libpthread, so it is not
necessary to link all libcrypto users against libpthread too.

Applications that link against libcrypto but not libpthread can't use
threaded OpenSSL functionality, of course -- OSSL_set_max_threads
will always fail in such applications.

This reverts all the makefile churn that I found for unnecessary
libpthread linkage since the openssl 3.5 import.

PR lib/59685: libcrypto should not depend on libpthread
 1.6 18-Sep-2025  mrg introduce a couple of new turn-off-gcc-warning variables and use them.

GCC 14 has a new annoying calloc() checker that we turn off in a bunch
of places, and there are a few more dangling-pointer issuse that come up,
but seem bogus.
 1.5 19-Jul-2025  christos crypto needs threads
 1.4 11-Jun-2018  kamil branches: 1.4.14;
Restore the MKGROFF=bo MKCXX=yes build

Mark the documentation in dc(1), gprof(1), rogue(6) and fsck_ffs(8) with
the .roff flag in SUBDIR.

Sponsored by <The NetBSD Foundation>
 1.3 21-May-2017  riastradh branches: 1.3.8;
Remove MKCRYPTO option.

Originally, MKCRYPTO was introduced because the United States
classified cryptography as a munition and restricted its export. The
export controls were substantially relaxed fifteen years ago, and are
essentially irrelevant for software with published source code.

In the intervening time, nobody bothered to remove the option after
its motivation -- the US export restriction -- was eliminated. I'm
not aware of any other operating system that has a similar option; I
expect it is mainly out of apathy for churn that we still have it.
Today, cryptography is an essential part of modern computing -- you
can't use the internet responsibly without cryptography.

The position of the TNF board of directors is that TNF makes no
representation that MKCRYPTO=no satisfies any country's cryptography
regulations.

My personal position is that the availability of cryptography is a
basic human right; that any local laws restricting it to a privileged
few are fundamentally immoral; and that it is wrong for developers to
spend effort crippling cryptography to work around such laws.

As proposed on tech-crypto, tech-security, and tech-userlevel to no
objections:

https://mail-index.netbsd.org/tech-crypto/2017/05/06/msg000719.html
https://mail-index.netbsd.org/tech-security/2017/05/06/msg000928.html
https://mail-index.netbsd.org/tech-userlevel/2017/05/06/msg010547.html

P.S. Reviewing all the uses of MKCRYPTO in src revealed a lot of
*bad* crypto that was conditional on it, e.g. DES in telnet... That
should probably be removed too, but on the grounds that it is bad,
not on the grounds that it is (nominally) crypto.
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file Makefile was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.3.8.1 25-Jun-2018  pgoyette Sync with HEAD
 1.4.14.1 02-Aug-2025  perseant Sync with HEAD
 1.4 26-Jun-2023  martin Make this compile when BIGNUM limbs (BN_ULONG) are not the same
size as "unsigned long" (e.g. in bn(64/32) configurations of openssl).
 1.3 06-Feb-2018  christos branches: 1.3.14;
Adjust to OpenSSL 1.1
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file bcode.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file bcode.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.3.14.1 30-Jun-2023  bouyer Pull up following revision(s) (requested by martin in ticket #220):
usr.bin/dc/bcode.c: revision 1.4
Make this compile when BIGNUM limbs (BN_ULONG) are not the same
size as "unsigned long" (e.g. in bn(64/32) configurations of openssl).
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos branches: 1.1.1.1.2; 1.1.1.1.4;
Import OpenBSD's dc.
 1.1.1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.1.1.4.1 10-Apr-2017  pgoyette file bcode.h was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.1.1.1.2.2 10-Apr-2017  christos 758508
 1.1.1.1.2.1 10-Apr-2017  christos file bcode.h was added on branch bouyer-socketcan on 2017-04-10 16:34:19 +0000
 1.3 01-Sep-2019  sevan dc was in v1
https://www.bell-labs.com/usr/dmr/www/man12.pdf
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4; 1.2.16; 1.2.18;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.18.1 05-Sep-2019  martin Pull up following revision(s) (requested by sevan in ticket #174):
lib/libc/sys/chmod.2: revision 1.48
lib/libc/sys/stat.2: revision 1.59
lib/libc/sys/unlink.2: revision 1.30
lib/libc/sys/lseek.2: revision 1.25
lib/libc/sys/getuid.2: revision 1.18
lib/libc/sys/chown.2: revision 1.37
lib/libm/man/exp.3: revision 1.32
lib/libm/man/log.3: revision 1.7
lib/libc/sys/open.2: revision 1.60
lib/libc/stdio/fopen.3: revision 1.36
lib/libc/stdio/putc.3: revision 1.14
lib/libc/sys/mount.2: revision 1.51
share/man/man9/copy.9: revision 1.22
share/man/man9/uiomove.9: revision 1.20
lib/libc/sys/setuid.2: revision 1.23
lib/libc/sys/close.2: revision 1.18
sbin/init/init.8: revision 1.61
lib/libc/sys/write.2: revision 1.36
lib/libc/sys/read.2: revision 1.39
sbin/init/init.8: revision 1.62
lib/libc/sys/wait.2: revision 1.40
usr.bin/tty/tty.1: revision 1.10
lib/libc/sys/link.2: revision 1.33
usr.bin/du/du.1: revision 1.24
lib/libc/stdlib/exit.3: revision 1.17
usr.bin/su/su.1: revision 1.53
usr.bin/mail/mail.1: revision 1.66
lib/libc/sys/fork.2: revision 1.25
usr.bin/su/su.1: revision 1.54
usr.bin/mail/mail.1: revision 1.67
lib/libm/man/sin.3: revision 1.15
share/man/man9/intro.9: revision 1.26
share/man/man5/utmp.5: revision 1.17
lib/libc/compat-43/creat.3: revision 1.17
lib/libc/time/ctime.3: revision 1.61
lib/libcompat/4.1/stty.3: revision 1.10
usr.bin/dc/dc.1: revision 1.3
lib/libm/man/cos.3: revision 1.17
lib/libc/sys/chdir.2: revision 1.23
lib/libc/gen/exec.3: revision 1.30
lib/libc/gen/exec.3: revision 1.31
games/bcd/bcd.6: revision 1.18
games/bcd/bcd.6: revision 1.19
usr.bin/write/write.1: revision 1.7
usr.bin/wc/wc.1: revision 1.18
usr.bin/pr/pr.1: revision 1.24
usr.bin/who/who.1: revision 1.25
lib/libc/sys/mkdir.2: revision 1.30
lib/libc/stdio/getc.3: revision 1.13
usr.bin/sort/sort.1: revision 1.40
usr.bin/mesg/mesg.1: revision 1.11
share/man/man5/passwd.5: revision 1.34
sort was there since v1
https://www.bell-labs.com/usr/dmr/www/man61.pdf

dc was in v1
https://www.bell-labs.com/usr/dmr/www/man12.pdf

du was in v1
https://www.bell-labs.com/usr/dmr/www/man12.pdf

mail was in v1
https://www.bell-labs.com/usr/dmr/www/man12.pdf

mesg was in v1
https://www.bell-labs.com/usr/dmr/www/man12.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man13.pdf

su was in v1
https://www.bell-labs.com/usr/dmr/www/man13.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man13.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man14.pdf
Update URL

write was in v1
https://www.bell-labs.com/usr/dmr/www/man14.pdf
grammar

passwd(5) was in v1
https://www.bell-labs.com/usr/dmr/www/man51.pdf

utmp(5) was present in v1
https://www.bell-labs.com/usr/dmr/www/man51.pdf

Earliest version of wtmp I could find was in v3
https://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man5/wtmp.5

Document history of chdir(2)
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history of chmod(2)
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history of chown(2)
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man21.pdf

create was present in v1
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history of exec()
Move statement on execlpe() & execvpe() to HISTORY section.

Document history
https://www.bell-labs.com/usr/dmr/www/man21.pdf

fork was present in v1
https://www.bell-labs.com/usr/dmr/www/man21.pdf
stat() was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

document history of fstat()
https://www.bell-labs.com/usr/dmr/www/man21.pdf

getuid was present in v1
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man21.pdf

Document history
https://www.bell-labs.com/usr/dmr/www/man21.pdf

stty & gtty were around since v1
https://www.bell-labs.com/usr/dmr/www/man21.pdf
https://www.bell-labs.com/usr/dmr/www/man22.pdf

mount & umount were present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

Open was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

read was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

seek was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

setuid was in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

unlink was presen in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

wait was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

write was present in v1
https://www.bell-labs.com/usr/dmr/www/man22.pdf

start documenting history
exp was present in v1
https://www.bell-labs.com/usr/dmr/www/man31.pdf

Start documenting history
https://www.bell-labs.com/usr/dmr/www/man31.pdf

Start documenting history
https://www.bell-labs.com/usr/dmr/www/man31.pdf

log appeared in v1
https://www.bell-labs.com/usr/dmr/www/man31.pdf

putc & putw were in v1
https://www.bell-labs.com/usr/dmr/www/man31.pdf

putchar was in v4
https://minie.tuhs.org/cgi-bin/utree.pl?file=V4/man/man3/putchr.3

Start documenting history
https://www.bell-labs.com/usr/dmr/www/man31.pdf

Document history.
https://www.bell-labs.com/usr/dmr/www/man11.pdf
Between v1 & v6 UNIX, bcd was rewritten in C, but I don't know if which
version,
hence I've skipped mentioning it.
End sentence with a dot.
Remove superfluous Pp.
Remove superfluous Pp.
Remove superfluous Ns.
Remove superfluous Pp.
fetch(9) -> ufetch(9)
fetch(9) -> ufetch(9). Remove superfluous Pp.
fetch(9) -> ufetch(9). Remove reference to unimplemented ppi(9).
 1.2.16.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file dc.1 was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file dc.1 was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file dc.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file dc.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos branches: 1.1.1.1.2; 1.1.1.1.4;
Import OpenBSD's dc.
 1.1.1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.1.1.4.1 10-Apr-2017  pgoyette file extern.h was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.1.1.1.2.2 10-Apr-2017  christos 758508
 1.1.1.1.2.1 10-Apr-2017  christos file extern.h was added on branch bouyer-socketcan on 2017-04-10 16:34:19 +0000
 1.3 06-Feb-2018  christos Adjust to OpenSSL 1.1
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file inout.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file inout.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file main.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file main.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file mem.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file mem.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.1 10-Apr-2017  christos branches: 1.1.2; 1.1.4;
build fixes.
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 10-Apr-2017  pgoyette file misc.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.1.2.2 10-Apr-2017  christos 758515
 1.1.2.1 10-Apr-2017  christos file misc.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file stack.c was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file stack.c was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.2 10-Apr-2017  christos branches: 1.2.2; 1.2.4;
build fixes.
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos Import OpenBSD's dc.
 1.2.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.2.4.1 10-Apr-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.2.2.2 10-Apr-2017  christos 758515
 1.2.2.1 10-Apr-2017  christos file Makefile was added on branch bouyer-socketcan on 2017-04-10 16:37:49 +0000
 1.1 10-Apr-2017  christos branches: 1.1.1;
Initial revision
 1.1.1.1 10-Apr-2017  christos branches: 1.1.1.1.2; 1.1.1.1.4;
Import OpenBSD's dc.
 1.1.1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.1.1.4.1 10-Apr-2017  pgoyette file dc was added on branch pgoyette-localcount on 2017-04-26 02:53:34 +0000
 1.1.1.1.2.2 10-Apr-2017  christos 758508
 1.1.1.1.2.1 10-Apr-2017  christos file dc was added on branch bouyer-socketcan on 2017-04-10 16:34:19 +0000

RSS XML Feed