aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/inetd/builtins.c
Commit message (Collapse)AuthorAgeFilesLines
* inetd: prefer strtonum(3) to strspn(3)+atoi(3), NFCKyle Evans2019-12-311-2/+8
| | | | | | | | strtonum(3) does effectively the same validation as we had, but it's more concise. Notes: svn path=/head/; revision=356217
* inetd: knock out some clang analyze warningsKyle Evans2019-12-311-2/+2
| | | | | | | | | | | | | | | | | chargen_dg: clang-analyze is convinced that endring could be non-NULL at entry, and thus wants to assume that rs == NULL. Just independently initialize rs if it's NULL to appease the analyzer. getconfigent: policy leaks on return free_connlist: reorganize the loop to make it clear that we're not going to access `conn` after it's been freed. cpmip/hashval: left-shifts performed will result in UB as we take signed 0xABC3D20F and left shift it by 5. Notes: svn path=/head/; revision=356215
* various: general adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-271-0/+2
| | | | | | | | | | | | | | | | | Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. No functional change intended. Notes: svn path=/head/; revision=326276
* Don't assign rs as we will assign it later.Xin LI2017-11-271-3/+1
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=326244
* - Add static for symbols which need not to be exported.Hiroki Sato2016-12-311-31/+30
| | | | | | | - Clean up warnings to the WARNS=6 level. Notes: svn path=/head/; revision=310921
* Rename getline with get_line to avoid collision with getline(3)Baptiste Daroussin2016-05-101-3/+3
| | | | | | | | When getline(3) in 2009 was added a _WITH_GETLINE guard has also been added. This rename is made in preparation for the removal of this guard Notes: svn path=/head/; revision=299356
* Rework all non-contributed files that use `struct timezone'.Ed Schouten2012-09-011-7/+1
| | | | | | | | | | | | | | | | | This structure is not part of POSIX. According to POSIX, gettimeofday() has the following prototype: int gettimeofday(struct timeval *restrict tp, void *restrict tzp); Also, POSIX states that gettimeofday() shall return 0 (as long as tzp is not used). Remove dead error handling code. Also use NULL for a nul-pointer instead of integer 0. While there, change all pieces of code that only use tv_sec to use time(3), as this provides less overhead. Notes: svn path=/head/; revision=239991
* Spelling fixes for usr.sbin/Ulrich Spörlein2011-12-301-1/+1
| | | | Notes: svn path=/head/; revision=228990
* Update a couple of comments relating to RFCs.David Malone2006-04-171-2/+5
| | | | Notes: svn path=/head/; revision=157820
* Port 37 (RFC 738) style times are supposed to be a 32 bit time sinceDavid Malone2006-04-171-6/+6
| | | | | | | | | | | | | | | 1900 in network byte order. Use a uint32_t to calculate and send the time, so that we don't need to know how big ints or longs are. I used uint32_t instead of int in the patch, on the off chance someone uses our inetd source on a system that doesnt 32 bit ints. PR: 95290 Submitted by: Bruce Becker <hostmaster@whois.gts.net> MFC after: 2 weeks Notes: svn path=/head/; revision=157816
* Fix typo: corrisponds -> correspondsTony Finch2002-07-221-1/+1
| | | | Notes: svn path=/head/; revision=100498
* __FBSDID() strategic insertion.Juli Mallett2002-06-211-3/+3
| | | | Notes: svn path=/head/; revision=98563
* Kill __P, yuck.Juli Mallett2002-06-211-15/+15
| | | | Notes: svn path=/head/; revision=98562
* Mark unused variables __unused.Juli Mallett2002-06-211-2/+2
| | | | | | | Built standalone, inetd(8) is WARNS=5 clean, WARNS=6 if you ignore %m fits. Notes: svn path=/head/; revision=98561
* Kill bad whitespace and do some style cleanups as a result of the protoize.Juli Mallett2002-06-211-30/+20
| | | | Notes: svn path=/head/; revision=98559
* ANSI prototypes via protoize(1).Juli Mallett2002-06-211-44/+36
| | | | Notes: svn path=/head/; revision=98558
* Introduce a version field to `struct xucred' in place of one of theDima Dorfman2002-02-271-1/+1
| | | | | | | | | | | | | | | spares (the size of the field was changed from u_short to u_int to reflect what it really ends up being). Accordingly, change users of xucred to set and check this field as appropriate. In the kernel, this is being done inside the new cru2x() routine which takes a `struct ucred' and fills out a `struct xucred' according to the former. This also has the pleasant sideaffect of removing some duplicate code. Reviewed by: rwatson Notes: svn path=/head/; revision=91354
* o Remove old setproctitle.David Malone2001-07-171-3/+3
| | | | | | | | | | | o Mark unused variables. o Set WARNS?=2 o Results in no code changes. Submitted by: Mike Barcroft <mike@q9media.com> Notes: svn path=/head/; revision=79815
* Fix most of the warnings given by WARNS=2.David Malone2001-06-241-25/+38
| | | | Notes: svn path=/head/; revision=78694
* Correct a comment - the time service returns seconds since 1900 not 1970.David Malone2001-06-041-1/+1
| | | | | | | Submitted by: ru Notes: svn path=/head/; revision=77685
* This patch cleans up the ident stuff in inetd. The code which hasDavid Malone2001-06-041-110/+119
| | | | | | | | | | | | | | | | | | | | | | been patched so many times it was a bit of a mess. There are style, code and man page cleanups. The following are the functional changes: The RFC only permits the returning of 4 possible error codes, make sure we only return these (PR 27636). Use MAXLOGNAME to determine the longest usernames. Add a -i flag, which returns the uid instead of the username (this is from a PR 25787, which also contained alot of the cleanups in this patch). PR: 25787, 27636 Partially Submitted by: Arne.Dag.Fidjestol@idi.ntnu.no Reviewed by: Arne.Dag.Fidjestol@idi.ntnu.no, green MFC after: 3 weeks Notes: svn path=/head/; revision=77684
* Make dg_echo return up to the first 65536 bytes of a datagram.David Malone2001-05-261-1/+1
| | | | | | | | | | | | The patch I used isn't quite the one Lars suggested, but the size of the largest datagram you can recv isn't #defined anywhere, and probably isn't even bounded for some protocols. PR: 25050 Submitted by: Lars Eggert <larse@isi.edu> Notes: svn path=/head/; revision=77231
* Allow ident requests with trailing junk following the terminating "\n".David Malone2001-03-281-1/+3
| | | | | | | | Reviewed by: ben Approved by: green Notes: svn path=/head/; revision=74934
* Switch to using a struct xucred instead of a struct xucred when notBrian Feldman2001-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | actually in the kernel. This structure is a different size than what is currently in -CURRENT, but should hopefully be the last time any application breakage is caused there. As soon as any major inconveniences are removed, the definition of the in-kernel struct ucred should be conditionalized upon defined(_KERNEL). This also changes struct export_args to remove dependency on the constantly-changing struct ucred, as well as limiting the bounds of the size fields to the correct size. This means: a) mountd and friends won't break all the time, b) mountd and friends won't crash the kernel all the time if they don't know what they're doing wrt actual struct export_args layout. Reviewed by: bde Notes: svn path=/head/; revision=72650
* Add a -F option to the builtin ident service, which allows .fakeid filesDavid Malone2000-12-051-3/+7
| | | | | | | | | | | | to contain the name of other valid users. PR: 22837 Submitted by: Andreas Gerstenberg <andy@andy.de> Reviewed by: green Reviewed by: sheldonh Notes: svn path=/head/; revision=69620
* Tidy up some prototypes:David Malone2000-12-031-2/+0
| | | | | | | | | | make sure there is exactly one prototype for each function, use K&R style definitions everywhere to match dominant style, make flag_signal take an int to avoid problems if we have ANSI prototypes and K&R definitions. Notes: svn path=/head/; revision=69546
* Make some style changes to the ident_stream() code.Brian Feldman2000-12-021-14/+20
| | | | | | | | Partially submitted by: alfred Reviewed by: alfred Notes: svn path=/head/; revision=69532
* Security fix: correctly set groups according to the user. Previously,Brian Feldman2000-11-251-6/+15
| | | | | | | | | | | | root's groups' permissions were being used, so a user could read up to 16 (excluding initial whitespace) bytes of e.g. a wheel-accessible file. Also, don't allow blocking on the opening of ~/.fakeid, so replace a fopen() with open() and fdopen(). I knew I'd be going to hell for using C file streams instead of POSIX syscalls... Notes: svn path=/head/; revision=69144
* Stop internal ident service spinning until the timeout if theDavid Malone2000-10-021-0/+2
| | | | | | | | | | connection goes away. Spotted by people on -STABLE about 2 weeks ago. Submitted by: Based on a patch by alfred and Maxime Henrion <mux@qualys.com> Notes: svn path=/head/; revision=66543
* Make builtin ident service work if the request arrives in more thanDavid Malone2000-07-121-15/+38
| | | | | | | | | | | | | | | one packet. Also check that the whole request has been recieved before processing it. The patch isn't the exact one from the PR, but a slight varient suggested by Brian. PR: 16086 Submitted by: Hajimu UMEMOTO <ume@mahoroba.org> Reviewed by: green Notes: svn path=/head/; revision=63045
* Fix the ident server up more: use ssize_t/size_t/socklen_t/int all in theBrian Feldman2000-05-301-23/+22
| | | | | | | | | proper places and make the fakeid parsing code a bit less stupid. Also, remove an "Rflag" that snuck in there (-R wouldn't be accepted by it, anyway). Notes: svn path=/head/; revision=61099
* Fix a 64-bit'ism in the handling of the ident service. sysctlbyname() takesJohn Baldwin2000-05-301-1/+2
| | | | | | | | | a size_t as its 3rd argument, which is 64-bits on the alpha. The 'len' variable used was a int, which is only 32-bits. Use size_t as the type for 'len' to work-around this. Notes: svn path=/head/; revision=61098
* Optimize those services that send only one block of data: use send(2)Sheldon Hearn2000-03-281-4/+4
| | | | | | | | | | with the MSG_EOF flag set instead of write(2). Submitted by: David Malone <dwmalone@maths.tcd.ie> Reviewed by: wollman Notes: svn path=/head/; revision=58735
* Allow using "-d username" without "-r". Example:Brian Feldman2000-03-281-2/+14
| | | | | | | auth stream tcp nowait root internal auth -d "Only fools trust ident" Notes: svn path=/head/; revision=58712
* Make inetd compilable without INET6.Yoshinobu Inoue2000-03-111-0/+2
| | | | | | | | | Approved by: jkh Submitted by: jhb Notes: svn path=/head/; revision=57906
* Fix addr length argument value passed to sendto().Yoshinobu Inoue2000-03-091-10/+10
| | | | | | | | | | | | Some inetd internal udp servers didn't worked with problem. Also fix recvfrom() "fromlen" arg type from int * to socklen_t *. Approved by: jkh Submitted by: bde Notes: svn path=/head/; revision=57857
* several tcp apps IPv6 updateYoshinobu Inoue2000-01-251-31/+57
| | | | | | | | | | | | | | | -inetd -rshd -rlogind -telnetd -rsh -rlogin Reviewed by: freebsd-arch, cvs-committers Obtained from: KAME project Notes: svn path=/head/; revision=56590
* I like base-36 better.Brian Feldman2000-01-201-4/+18
| | | | Notes: svn path=/head/; revision=56303
* Implement -g and -d options in my ident code. The -g flag uses a randomBrian Feldman2000-01-191-12/+45
| | | | | | | | | | | | | garbage value for the username (hex garbage, that is), and the -d flag provides a default username for fallback purposes if the user cannot be looked up. That is very useful for the case where inetd auth is running on a NAT box. While I'm here updating the manpage, clean up an English error and a few small nits. Notes: svn path=/head/; revision=56298
* $Id$ -> $FreeBSD$Peter Wemm1999-08-281-1/+1
| | | | Notes: svn path=/head/; revision=50479
* Here goes, the "clear up any possible confusion" commit.Brian Feldman1999-07-261-11/+65
| | | | | | | | | | | | I've taken time to write up comments for the ident code tonight, so there should no longer be any confusion about the purpouse of whatever is in there. Wow, me commenting code... who'd have thought that would happen? Reviewed by: DES Notes: svn path=/head/; revision=49104
* More cleanups to ident_stream. Variables moved around, changed.Brian Feldman1999-07-251-16/+11
| | | | | | | | | | Got rid of an extra variable or two, while making corrections to problems (that would probably not be a problem anyway, and worked.) Partially Obtained from: David Malone <dwmalone@maths.tcd.ie> Notes: svn path=/head/; revision=49089
* More cleanups, asprintf() usage (proper, as opposed to using snprintf()),Brian Feldman1999-07-241-12/+36
| | | | | | | and addition of a -n .noident-checking flag. Notes: svn path=/head/; revision=49057
* Clean up to match style(9) more closely. This should fix the problem ofBrian Feldman1999-07-241-6/+5
| | | | | | | people having ants in their pants ;) Notes: svn path=/head/; revision=49054
* Use comments to group functions by service more clearly. I've used theSheldon Hearn1999-07-241-2/+31
| | | | | | | excuse of providing the RFC numbers for the associated services. Notes: svn path=/head/; revision=49052
* Style nits:Sheldon Hearn1999-07-241-5/+8
| | | | | | | | | | | | | | * Bring memory allocation failure handling in line with that of the rest of the code. * Nestle block curlies between case statements correctly. I've left the in-block declarations alone, since style(9) says we should conform to the existing style within the code, and inetd already does this. I've left the asprintf()'s in there because that's how Brian wants it. Notes: svn path=/head/; revision=49051
* Ahem. Put things back a bit. I declare variables in the scope they'reBrian Feldman1999-07-231-9/+13
| | | | | | | | | used! I don't declare every variable at the top of a function because that wastes stack space. I've clarified the error a bit (for if asprintf() filas.) Notes: svn path=/head/; revision=49033
* Style cleanups for iderror() and ident_stream(). Looks like c++ hang-over.Sheldon Hearn1999-07-231-25/+24
| | | | | | | ;-) Notes: svn path=/head/; revision=49030
* Fix auth -t argument handling. It was broken for the "sec.usec" case.Sheldon Hearn1999-07-231-4/+5
| | | | | | | Add a warning for bogus -t arguments for the (debug) case. Notes: svn path=/head/; revision=49029
* Fixed a braino: lack of spaces in sscanf caused ident parsing to fail.Brian Feldman1999-07-231-2/+2
| | | | | | | Sorry, guys. Notes: svn path=/head/; revision=49015