Others have reported this before. It was not filesystem corruption. I've had this for a while on one of my machines and finally investigated. It looks like cvs repo surgery screwed it up at one point. I fixed it by rming channels.c,v and re-cvsupping. Just in case any one is curious what happened, here is the diff between what I had and the good cvs file: --- /home/nate/channels.c,v Fri Feb 27 10:30:40 2004 +++ channels.c,v Thu Feb 26 02:38:50 2004 _at__at_ -1,4 +1,5 _at__at_ -head 1.16; +head 1.15; +branch 1.1.1; access; symbols OpenSSH_3_8p1:1.1.1.16 _at__at_ -63,11 +64,6 _at__at_ comment _at_ * _at_; -1.16 -date 2003.09.17.00.58.33; author nectar; state Exp; -branches; -next 1.15; - 1.15 date 2003.05.01.15.05.42; author des; state Exp; branches _at__at_ -348,11 +344,9 _at__at_ _at__at_ -1.16 +1.15 log -_at_Additional corrections to OpenSSH buffer handling. - -Obtained from: openssh.org +_at_Remove RCSID from files which have no other diffs to the vendor branch. _at_ text _at_/* _at__at_ -586,13 +580,12 _at__at_ if (found == -1) { /* There are no free slots. Take last+1 slot and expand the array. */ found = channels_alloc; + channels_alloc += 10; if (channels_alloc > 10000) fatal("channel_new: internal error: channels_alloc %d " "too big.", channels_alloc); - channels = xrealloc(channels, - (channels_alloc + 10) * sizeof(Channel *)); - channels_alloc += 10; debug2("channel: expanding %d", channels_alloc); + channels = xrealloc(channels, channels_alloc * sizeof(Channel *)); for (i = found; i < channels_alloc; i++) channels[i] = NULL; } _at__at_ -3127,19 +3120,6 _at__at_ } packet_send(); } -_at_ - - -1.15 -log -_at_Remove RCSID from files which have no other diffs to the vendor branch. -_at_ -text -_at_a231 1 - channels_alloc += 10; -d235 3 -a238 1 - channels = xrealloc(channels, channels_alloc * sizeof(Channel *)); _at_Received on Fri Feb 27 2004 - 11:15:33 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:44 UTC