sizeof(ifr->ifr_addr) for the variable length field ifr->ifr_addr.sa_len.
Otherwise the increment will be wrong in certain cases.
Obtained from: Whistle source tree
For the record: Garrett Wollman <wollman@khavrinen.lcs.mit.edu> suggests
SIOCGIFCONF should be dropped in favor of a sysctl mechanism.
+ add a missing call to dn_rule_delete() when flushing firewall
rules, thus preventing possible panics due to dangling pointers
(this was already done for single rule deletes).
+ improve "usage" output in ipfw(8)
+ add a few checks to ipfw pipe parameters and make it a bit more
tolerant of common mistakes (such as specifying kbit instead of Kbit)
PR: kern/10889
Submitted by: Ruslan Ermilov
do things like:
camcontrol tur da5
or
camcontrol tur 1:2:0
or
camcontrol tur 1:2
These changes are fully backwards compatible with the original device
specification syntax (-n dev -u unit), so it is possible to use either
method to specify a device now.
The device specification changes do not affect the rescan, reset or debug
commands, since by design, those commands work on a bus or bus:target:lun
basis only.
Also, shorten the default usage statement so that it fits in a 24 column
terminal. The full usage statement is still available by using the "help"
"-h" or "-?" arguments to camcontrol.
Submitted by: Joerg Wunsch <joerg_wunsch@interface-business.de>
entries go into the config file.
Clarify what names can be used for Vinum drives, and what will happen
to you if you use other names.
Forcibly-demonstrated-by: Thomas Stromberg <tstromberg@rtci.com>
Peter K Campbell <PCampbel@vtrlmel1.telstra.com.au>
George Cox <george.cox@sophos.com>
many others, but those were the only three today.
options:
-o fstab brings in filesystem options specified in /etc/fstab
-o current incorporates the current set of options for the file
system
The rightmost option wins in the case of conflicting options being
specified.
E.g.:-
# mount -u -o current,nosuid /home
will preserve the current mount options while adding the 'nosuid' flag.
2. Rewording of manual page to be hopefully clearer; small -Wall
cleanups.
Thanks to David Malone for his patience and willingness to work
multiple patches on request.
PR: bin/6399
Submitted by: David Malone <dwmalone@maths.tcd.ie>
NOTE: These changes will require recompilation of any userland
applications, like cdrecord, xmcd, etc., that use the CAM passthrough
interface. A make world is recommended.
camcontrol.[c8]:
- We now support two new commands, "tags" and "negotiate".
- The tags commands allows users to view the number of tagged
openings for a device as well as a number of other related
parameters, and it allows users to set tagged openings for
a device.
- The negotiate command allows users to enable and disable
disconnection and tagged queueing, set sync rates, offsets
and bus width. Note that not all of those features are
available for all controllers. Only the adv, ahc, and ncr
drivers fully support all of the features at this point.
Some cards do not allow the setting of sync rates, offsets and
the like, and some of the drivers don't have any facilities to
do so. Some drivers, like the adw driver, only support enabling
or disabling sync negotiation, but do not support setting sync
rates.
- new description in the camcontrol man page of how to format a disk
- cleanup of the camcontrol inquiry command
- add support in the 'devlist' command for skipping unconfigured devices if
-v was not specified on the command line.
- make use of the new base_transfer_speed in the path inquiry CCB.
- fix CCB bzero cases
cam_xpt.c, cam_sim.[ch], cam_ccb.h:
- new flags on many CCB function codes to designate whether they're
non-immediate, use a user-supplied CCB, and can only be passed from
userland programs via the xpt device. Use these flags in the transport
layer and pass driver to categorize CCBs.
- new flag in the transport layer device matching code for device nodes
that indicates whether a device is unconfigured
- bump the CAM version from 0x10 to 0x11
- Change the CAM ioctls to use the version as their group code, so we can
force users to recompile code even when the CCB size doesn't change.
- add + fill in a new value in the path inquiry CCB, base_transfer_speed.
Remove a corresponding field from the cam_sim structure, and add code to
every SIM to set this field to the proper value.
- Fix the set transfer settings code in the transport layer.
scsi_cd.c:
- make some variables volatile instead of just casting them in various
places
- fix a race condition in the changer code
- attach unless we get a "logical unit not supported" error. This should
fix all of the cases where people have devices that return weird errors
when they don't have media in the drive.
scsi_da.c:
- attach unless we get a "logical unit not supported" error
scsi_pass.c:
- for immediate CCBs, just malloc a CCB to send the user request in. This
gets rid of the 'held' count problem in camcontrol tags.
scsi_pass.h:
- change the CAM ioctls to use the CAM version as their group code.
adv driver:
- Allow changing the sync rate and offset separately.
adw driver
- Allow changing the sync rate and offset separately.
aha driver:
- Don't return CAM_REQ_CMP for SET_TRAN_SETTINGS CCBs.
ahc driver:
- Allow setting offset and sync rate separately
bt driver:
- Don't return CAM_REQ_CMP for SET_TRAN_SETTINGS CCBs.
NCR driver:
- Fix the ultra/ultra 2 negotiation bug
- allow setting both the sync rate and offset separately
Other HBA drivers:
- Put code in to set the base_transfer_speed field for
XPT_GET_TRAN_SETTINGS CCBs.
Reviewed by: gibbs, mjacob (isp), imp (aha)
Describe new scale letter for sizes: 's' (sector) instead of 'b'
(block). Both mean 512 bytes, but 'b' is deprecated because it's
confusing.
Document log file and environment variables.
If no file name is specified, create one and edit it with the editor
specified in the EDITOR environment variable, by default vi.
vinum_help:
Update.
Fix typos in messages.
has been done. This name can be overridden by the value of the
VINUM_HISTORY environment variable.
Print dates in log file according to the variable VINUM_DATEFORMAT, by
default %e %b %Y %H:%M:%S.
* Don't buffer "Digesting..." output - flush it immediately.
* Increase the number of repetitions by a factor of 100, and the block size by
a factor of 10 so as to give meaningful results on modern machines (108
seconds on my P120, and ~26 seconds on a P-II 350).
PR: bin/10604
Submitted by: Stanislav Shalunov <shalunov@lynxhub.lz.att.com>
o main returns int not void
o use braces to avoid potentially ambiguous else
Note: The fix to natd is potentially functional in nature since I used
the indentation as the right thing rather than the struct semantics.
Someone more familiar with the code should double check me on this one.
Reviewed by: obrien and chuckr
cannot yet be closed, though.
I hope I got all credits right, and that the multiple submitted by lines
do not break anyone's scripts...
PR: kern/5038, kern/5567
Submitted by: Keith Jang <keith@email.gcn.net.tw>
Submitted by: Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de>
Submitted by: Byung Yang <byung@wam.umd.edu>
Submitted by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp>
list functions. Previously, it would produce a non-verbose listing of
the objects followed individually by a statistics listing. Now it
produces only a one-line-per-object statistics listing.
Remove comments about not being able to unload from the command line.
Add another example configuration output.
Clarify when to use 'vinum start' and when to use 'vinum read'.
subdisks in need of revival.
vinum_stop: sleep for a second before unloading. This solves a race
condition with a potential daemon when the stop command
is specified on the command line.
When creating a new drive, if the drive already has a vinum label,
and name doesn't match the specified drive, do it anyway if the
'force' flag is specified.
Continually-tripped-over-by: Karl Pielorz <kpielorz@tdx.co.uk>
Update information about partition type for Vinum drives. They
*should* be of type 'vinum', but currently we still accept (and
complain about) partitions of type 'unused'. At a later date, only
'vinum' will be accepted.
Threatened-since: over a year
Semantics:
When creating a new drive, if the drive already has a vinum label,
and name doesn't match the specified drive, do it anyway if the
'force' flag is specified.
Continually-tripped-over-by: Karl Pielorz <kpielorz@tdx.co.uk>
so that dumps are treated by dump -w as having been done on midnight
of the day they were actually run. This makes dump -w behave as
expected for regularly scheduled daily dumps - if they all run the
same day. It makes dump -w behave strangely if you dump late in the
day and check again after midnight, but that is the lesser of two
evils.
Submitted by: Mike Meyer <mwm@phone.net>
PR: 9429
the debug superdevice when we're compiled without debug, or the normal
superdevice when we're compiled with debug. If this succeeds, print
an informative comment and exit.
make_devices: Create both debug and normal superdevices.
- Transparent proxy support.
- PERMANENT_LINK IS NOW OBSOLETE, use redirect_port instead.
- Drop support for early FreeBSD 2.2 versions
- If separate input & output sockets are being used
use them to find out packet direction instead of
normal mechanism. This can be handy in complex environments
with multiple interfaces.
- PPTP redirect support by Dru Nelson <dnelson@redwoodsoft.com> added.
- Logging enhancements from Martin Machacek <mm@i.cz> added.
Obtained from: Ari Suutari <ari@suutari.iki.fi>
Wait4 zombies.
make_devices: Don't try if the /dev directory is mounted read-only.
Create daemon superdevice /dev/vinum/controld.
Format a couple of multiline comments conformant with style(9).
for us.
Rebuild the (almost empty) /dev/vinum directory.
vinum_start: remove superflous "read" parameter when starting with no
parameters.
vinum_stop: without an argument, stop Vinum and remove the kld if
it's idle.
vinum_saveconfig: New command to save configuration.
256 kB instead of 16 kB.
Pointed-out-by: Steve Taylor <staylor@cybernet.com>
Modify description of start command to include 'start' with no
parameters, which reads the config from all drives found on the
system.
the wrong module can cause confusion, including loading both versions
(which conflict with each other) and incorrect ioctls, which cause
unintelligible error messages.
Extend 'start' command: if used without any parameters, vinum scans
all disks known to devstat for vinum drives and reads their
configuration.
the mount is completely active, causing the next few commands attempting
to manipulate data on the mount to fail. mount_mfs's parent now tries
to wait for the mount point st_dev to change before returning, indicating
that the mount has gone active.
to be written to /etc.
The only essential change is in paths.h, so any third-party software
written correctly will pick it up in the next rebuild.
Reviewed by: the committers list (actually an old version)
getvfsent() in most cases. (The main exception is when /etc/fstab
still hasn't been converted to use a slice for the root device, the
root device is a SCSI device, and the /dev/sd* inode for this device
still hasn't been renamed to /dev/da*.)
- Comment out the description of the unimplemented replace command
- Explain in even stronger language that resetconfig is not for
everyday use
Motivated by: Marko Schütz <marko@ki.informatik.uni-frankfurt.de>
- Correct the description of the start command (no longer used to
start vinum, just specific objects)
Motivated by: dg
- Remove .TH N commands, which conflict badly with the doc macros,
causing strange headings in nroff output and endless loops in troff.
The current version produces warning messages with some screen
sizes, and will be fixed when I have time.
Bug-report: docs/9328 (nroff)
Reported-by: joerg (troff)
- Add gotcha info for the setupstate keyword and the use of label and
resetconfig.
- Add bug entry for the warning messages introduced by fixing
docs/9328.
- Add references to web pages on Vinum
In the words of the submitter:
"The patch below allows to ping from any address on the multihomed host.
The man page is also updated, the text was cutted from traceroute(8)."
Submitted by: Ruslan Ermilov
PR: 6832
It just replace u_long with u_int32_t and shouldn't affect on i386.
Without this patch,
- unaligned accesses occur
- permission denied randomly
Submitted by: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
- Describe subdisk attachment in more detail
- Describe new 'makedev' command
- Correct use of 'partition' and 'slice'
- Describe 'setupstate' keyword
- Include performance guidelines for striped plexes
- Correct numerical values in examples
- Add examples for disklabel(8)
- Clarify problems creating Vinum drives on inappropriate partitions
Prodded by: NAGANUMA Yasuhiro <y_naga@carat.rim.or.jp> (slices and
partitions)
Submitted by: Kirk McKusick <mckusick@McKusick.COM>
Obtained from: Mckusick, BSDI and a host of others
This exactly matches Kirks sources imported under the
Tag MCKUSICK2. These are as supplied by kirk with one small
change needed to compile under freeBSD.
Some FreeBSD patches will be added back, though many have been
added to Kirk's sources already.
This allows for more flexible ipfw configuration files using
`variables' to describe frequently used items in the file, like the
local IP address(es), interface names etc. Both m4 and cpp are useful
and supported; with m4 being a little more unusual to the common C
programmer, things like automatic rule numbering can be achieved
fairly easy.
While i was at it, i've also untangled some of the ugly style inside
main(), and fixed a bug or two (like not being able to use blank lines
when running with -q).
A typical call with preprocessor invocation looks like
ipfw -p m4 -Dhostname=$(hostname) /etc/fwrules
Someone should probably add support for this feature to /etc/rc.firewall.
I don't have access to a BSD/OS machine to check the veracity of the
magic number. However, no harm will be done by the commit and since
someone was motivated enough to file a PR, I'm committing the change.
PR: 7629
Submitted by: Jos Backus <jbackus@plex.nl>
unused static inlines in headers without -O.
Fixed missing libraries in DPADD.
Use .PATH instead of a symlink farm.
Removed bogus dependency of util.c on statetext.h (only util.o depends
on it). Removed rule for building statetext.h. The dependency was used
to get statetext.h built, but statetext.h is a non-generated source file
so it doesn't need building. This fixes an annoying message for the null
build and use of `make' instead of ${MAKE} to do the null build.
Fixed some style bugs.
and we don't use the frags info, so why bother? More to the point, it
seems to result in an EXDEV error when the label is written out and we
lose because of it (don't know why though). This is a work-around and
is marked as such.
that any transactions in front of the stop command get flushed to disk
first. This will have no effect on devices that have tagged queueing
turned off, or don't support tagged queueing.
Reviewed by: gibbs
print out a one line description/dump of every SCSI CDB sent to a
particular debugging target or targets.
This is a good bit more useful than the other debugging modes, I think.
Change some things in LINT to note the availability of this new option.
Fix an erroneous argument to scsi_cdb_string() in scsi_all.c
Reviewed by: gibbs
which caused the reference count of a directory to get doubly
decremented.
PR: bin/8030
Reviewed by: nate
Submitted by: Don Lewis <Don.Lewis@tsc.tdk.com>