sndiod.8: More completely document `d' flag

2016-01-15 Thread Michael Reed
Hi, I noticed that the sndiod(8) manual doesn't mention that: - `sndiod -d' doesn't daemonize - the `d' flag can be specified multiple times The wording was taken from syslogd.8. Index: sndiod.8 === RCS file: /cvs/src/usr.bin/sndiod

less.h small cleanup

2016-01-26 Thread Michael Reed
- sorts includes + remove unneeded comment - less.h 1.24[1] removes the only use of CHAR_BIT, so remove it - remove SHELL_META_QUEST, doesn't seem to be used either [1]: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/less/less.h.diff?r1=1.23&r2=1.24&sortby=date&f=h Index: less.h ==

`ifstated -n' more useful error message

2016-01-28 Thread Michael Reed
If fopen("/etc/ifstated.conf", ...) fails for whatever reason the error message isn't very helpful: $ ifstated -n ifstated: /etc/ifstated.conf With this patch: $ ./ifstated -n ifstated: /etc/ifstated.conf: No such file or directory Index: parse.y ==

vi.1: remove more predefined strings

2016-02-08 Thread Michael Reed
Done for the same reason as rev. 1.57[1]. I observed no diff in the generated output for terminals, but I'm unsure if these strings are wanted for prettier pdf/ps/html/... output. Regards, Michael Reed [1]: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/vi/docs/USD.doc/vi.man

vi.1: pull in some changes from nvi2

2016-02-11 Thread Michael Reed
nvi2[1]'s man page has diverged a bit from our own. I think many of the changes are for the better, although not all; because of that I'll be sending a patch to nvi2 after this. To ease review, this patch only includes the low hanging fruit--primarily typo fixes and using correct macros. [1]: h

operator.7: Remove ref to nonexistant FILES

2017-05-30 Thread Michael Reed
Hi, Per [1], /usr/share/misc/operator no longer exists, so there's no need to reference it. [1]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share/misc/Attic/operator Index: operator.7 === RCS file: /cvs/src/share/man/man7/op

airport.7: mandoc -Tlint fixes

2017-05-30 Thread Michael Reed
Hi, The new airport.7 has a few small formatting issues as determined by `mandoc -Tlint`. This diff fixes them. Index: airport.7 === RCS file: /cvs/src/share/man/man7/airport.7,v retrieving revision 1.1 diff -u -p -r1.1 airport.7

cwm.1: use key names from /usr/X11R6/include/X11/keysymdef.h

2017-07-20 Thread Michael Reed
While trying to unbind C-/ in cwm, it took me a while to realize that you can't do "unbind-key C-/", as the key "/" is not defined in /usr/X11R6/include/X11/keysymdef.h. Instead you must do "unbind-key C-slash", as "slash" is defined there. Considering this, I think that the cwm man page is misl

Be specific about doas(1) timeout length

2016-09-05 Thread Michael Reed
So people don't have to look in the source code. Index: doas.conf.5 === RCS file: /cvs/src/usr.bin/doas/doas.conf.5,v retrieving revision 1.30 diff -u -p -r1.30 doas.conf.5 --- doas.conf.5 2 Sep 2016 18:12:30 - 1.30 +++ doa

sysmerge.8: Mention PAGER behavior when undefined/empty

2016-09-05 Thread Michael Reed
As is done in other man pages. === RCS file: /cvs/src/usr.sbin/sysmerge/sysmerge.8,v retrieving revision 1.78 diff -u -p -r1.78 sysmerge.8 --- sysmerge.8 2 Sep 2016 12:17:33 - 1.78 +++ sysmerge.8 5 Sep 2016 21:54:28 -

acme-client.1: Use indented display for source code

2016-09-05 Thread Michael Reed
I find that keeping prose at a different indentation level than source code makes the man page easier to read. Besides, it's already done in most other man pages. Index: acme-client.1 === RCS file: /cvs/src/usr.sbin/acme-client/acm

rcctl.8 macro fixes

2015-07-24 Thread Michael Reed
Hi, mdoc(7) states that the Cm macro should be used for "fixed strings passed as arguments, unless Fl is more appropriate", which seems like a better fit for the below cases than Ar. Regards, Michael Index: rcctl.8 === RCS file: /cv

doas man page improvements

2015-07-24 Thread Michael Reed
Hi, This makes some minor improvements to doas.1, doas.conf.5, and (just barely) su.1. A lot of this was just annotating `command` with Ar, which I find helpful when reading man pages as immediately know it's an argument; not sure what everyone else thinks. According to apropos(1), there's a few

Re: doas man page improvements

2015-07-25 Thread Michael Reed
Hi Jason, I've left replies inline and a new patch at the bottom with the following changes: - dropped the subjective wording and markup changes - dropped su.1 change On 07/25/15 03:58, Jason McIntyre wrote: >> The default is root. >> .El >> +.Sh FILES >> +.Bl -tag -width >> /etc/doas.conff >> +

Re: doas man page improvements

2015-07-25 Thread Michael Reed
On 07/25/15 15:01, Jason McIntyre wrote: > i do appreciate the mail - diffs are always welcome. but with markup i > just find myslef less inclined to mark up everything because i can. it's > only my opinion. > > jmc I've made a much smaller diff, including only the two bits you okay'd and the ke

Update afterboot(8) for new PermitRootLogin default

2015-07-31 Thread Michael Reed
Hi all, I noticed that the default for the sshd_config option "PermitRootLogin" changed from "yes" to "no" [1], but afterboot(8) still refers to it as if "yes" is the default. Perhaps the sub-section could be reworded a bit to clarify the new default, but I'll leave that to the developers as I'm

worm(6): exit earlier if given invalid arg

2015-08-10 Thread Michael Reed
Hi tech@, I only have a very loose idea of what gets accepted or not when the tree is "locked", so apologies if this should have been sent at a different time. If I launch worm(6) with an invalid argument, my terminal flashes once before the strtonum error message is shown. I assume this is beca

vipw.8: small improvement

2015-08-10 Thread Michael Reed
Hi, I figure that the text which this diff removes wasn't of much use besides stating the obvious, as the meaning of list items in the ENVIRONMENT section seems pretty consistent across the man pages. Regards, Michael Index: src/usr.sbin/vipw/vipw.8 =

[patch] ports.7 macro fixes

2015-08-18 Thread Michael Reed
Hi, This is in the same vein as [1], which replaced the usage of `Ar' with `Cm' where applicable. Besides that, I unindented line 134 because `-offset indent' is already being used, but that's it. Regards, Michael [1]: https://marc.info/?l=openbsd-tech&m=143778713715847&w=2 Index: src/share/

[patch] radiusctl: clean up usage info + `return' from main()

2015-08-24 Thread Michael Reed
Hi all, This patch does the following: - Removes references to the -h flag, which was removed from radiusctl(8) a while ago. - When in main(), use `return' instead of exit(3), which reduces the size of radiusctl a bit. I find this more elegant, but that's subjective, so please feel free to

[patch] radiusd: rm -h flag, fail earlier (and print usage) given an unknown option

2015-08-24 Thread Michael Reed
Hi all, This patch removes the -h flag because it seems very rare in OpenBSD programs, perhaps because options are usually already documented in manuals, as is the case for radiusd. Regardless of the rest of the system, I don't think an -h flag does much good for radiusd given how simple its opti

[patch] ctags(1): make -w the default

2015-08-24 Thread Michael Reed
Hi all, As mentioned in the `EXIT STATUS' section of the ctags manual, duplicate objects are not considered errors. Given that, I don't think warnings about them should be printed by default, especially since they can fill a whole terminal screen and aren't particularly useful, at least to me. A

Re: [PATCH] doas authentication type

2015-08-26 Thread Michael Reed
Hi Renauld, On 08/26/15 09:38, Renaud Allard wrote: > I rewrote a little bit the patch to remove a small kind-of typo in the > manpage and remove too long lines. > So with this patch, you add the user the right to choose the authentication > style and administratively, in login.conf, you can res

ntpd(8): Make -n quieter

2015-08-30 Thread Michael Reed
Hi all, If ntpd is run with the -n flag, and /etc/ntpd.conf is parsed without error, then "Configuration OK" is printed. I don't think this is particularly useful, as both a lack of an error message and an exit value of 0 already indicate success in this case. This seems to be the case for most

Re: ntpd(8): Make -n quieter

2015-08-30 Thread Michael Reed
On 08/30/15 14:58, Michael Reed wrote: > Hi all, > > If ntpd is run with the -n flag, and /etc/ntpd.conf is parsed without > error, then "Configuration OK" is printed. I don't think this is > particularly useful, as both a lack of an error message and an exit

Re: ntpd(8): Make -n quieter

2015-08-31 Thread Michael Reed
On 08/31/15 07:36, Sebastian Benoit wrote: > Michael Reed(m.r...@mykolab.com) on 2015.08.30 14:58:35 -0400: >> Hi all, >> >> If ntpd is run with the -n flag, and /etc/ntpd.conf is parsed without >> error, then "Configuration OK" is printed. I don't think

bsd.port.mk.5: Misc. tweaks

2015-09-12 Thread Michael Reed
Hi all, This patch consists of three small changes and one large one. The small changes are as follows: - In two places, replaced `...' style quoting with Sq, which is used throughout the manual. - added missing comma after `e.g.' - fixed spelling of `licencing' -> `licensing' The large change

Re: bsd.port.mk.5: Misc. tweaks

2015-09-19 Thread Michael Reed
Hi Ingo, On 09/16/15 16:16, Ingo Schwarze wrote: > Hum, mixing small and large changes is not a very good idea. > When proposing a large change, it is best to send one self-contained > patch doing nothing but that large change. Sure; unlike the LKML, it doesn't seem to be common practice here to

bsd.port.mk.5: fix an external reference

2015-09-19 Thread Michael Reed
Index: bsd.port.mk.5 === RCS file: /cvs/src/share/man/man5/bsd.port.mk.5,v retrieving revision 1.420 diff -u -p -r1.420 bsd.port.mk.5 --- bsd.port.mk.5 16 Sep 2015 19:59:57 - 1.420 +++ bsd.port.mk.5 19 Sep 2015 19:

perlpod conversion: crypto.3

2015-09-19 Thread Michael Reed
Hi, This was done with pod2mdoc + various manual tweaking. Besides the macro changes, there are few differences between the original manual's text. This is done in order to ease review. This is the reason why there are many references to non-existent manuals, e.g., rc4(3), stack(3), and txt_db(3

bsd.port.mk.5: Use Xr where appropriate

2015-09-20 Thread Michael Reed
Index: src/share/man/man5/bsd.port.mk.5 === RCS file: /cvs/src/share/man/man5/bsd.port.mk.5,v retrieving revision 1.421 diff -u -p -r1.421 bsd.port.mk.5 --- src/share/man/man5/bsd.port.mk.520 Sep 2015 18:20:37 - 1.421 +++

ports.7: tweak wording + punctuation

2015-09-21 Thread Michael Reed
Hi, I found the wording in ports.7 awkward in a few places, which this patch aims to fix. Besides that, there's a few small punctuation changes. I've tried to only touch low-hanging fruit to avoid any bikeshedding, but if you think any change is too subjective just let me know. Regards, Michael

ports.7: Ar -> Va

2015-09-21 Thread Michael Reed
Hi all, The variables below take arguments, but are not arguments themselves. Given that, change the markup accordingly. Regards, Michael Index: src/share/man/man7/ports.7 === RCS file: /cvs/src/share/man/man7/ports.7,v retrieving

bsd.port.mk.5: Two small tweaks

2015-09-22 Thread Michael Reed
I'm pretty sure the use of Nm was previously wrong, but let me know if I'm off the mark. Index: src/share/man/man5/bsd.port.mk.5 === RCS file: /cvs/src/share/man/man5/bsd.port.mk.5,v retrieving revision 1.422 diff -u -p -r1.422 bsd.po

bsd.port.mk.5: Remove unneeded args to Nm

2015-09-22 Thread Michael Reed
In bsd.port.mk.5, the use of arguments to Nm is inconsistent, and when they are used it's seemingly redundant; this patch fixes that. I verified there's no change in the formatted manual with this: $ diff <{mandoc bsd.port.mk.5.orig} <{mandoc bsd.port.mk.5} Finally, if anyone is wondering, line 1

arch(1): small cleanup

2015-09-23 Thread Michael Reed
Hi all, I test it out as both `arch' and `machine' and didn't observe any differences. Also, I figured I might as well convert exit(3) to return while touching this code, as was done in [1]. Regard, Michael [1]: https://marc.info/?l=openbsd-tech&m=144095769912804&w=2 Index: src/usr.bin/arch/

banner(1): fix SYNOPSIS

2015-09-23 Thread Michael Reed
banner(1) without arguments works fine, so denote it as such in the manual. Index: src/usr.bin/banner/banner.1 === RCS file: /cvs/src/usr.bin/banner/banner.1,v retrieving revision 1.8 diff -u -p -r1.8 banner.1 --- src/usr.bin/banner

Re: afterboot.8 to reference ntpd(1) enabled by default

2015-09-25 Thread Michael Reed
Hi Rob, No comment on if this is a good idea or not as I'm not an OpenBSD developer, but I left a few comments inline regarding the mdoc semantics. On 09/25/15 16:57, Rob Pierce wrote: > Since ntpd(1) is now enabled by default do the following changes make sense? > > Regards, > > Index: afterbo

bsd.port.mk.5: restructure `clean' section

2015-09-26 Thread Michael Reed
The `clean' target takes optional arguments, so denote that in the item header. Additionally, the subtargets are fixed strings, not variables, so change the use of Va to Cm to reflect that. Index: bsd.port.mk.5 === RCS file: /cvs/sr

mk.conf.5: Use Ql where appropriate

2015-09-27 Thread Michael Reed
Hi all, Instead of using a mix of single and double quotes to denote command invocations and literal strings, use Ql instead. This was inspired by revision 1.425 of bsd.port.mk [1]. While doing the above, I also removed a seemingly bogus use of `Ev' prepending `-pipe'. Regards, Michael [1]: h

Re: mk.conf.5: Use Ql where appropriate

2015-10-01 Thread Michael Reed
On 10/01/15 16:38, Jason McIntyre wrote: > On Sun, Sep 27, 2015 at 03:48:10PM -0400, Michael Reed wrote: >> Hi all, >> >> Instead of using a mix of single and double quotes >> to denote command invocations and literal strings, >> use Ql instead. This was

Re: mk.conf.5: Use Ql where appropriate

2015-10-01 Thread Michael Reed
On 10/01/15 23:43, Michael Reed wrote: > On 10/01/15 16:38, Jason McIntyre wrote: >> On Sun, Sep 27, 2015 at 03:48:10PM -0400, Michael Reed wrote: >>> Hi all, >>> >>> Instead of using a mix of single and double quotes >>> to denote command invocations a

acpidump(8): fix usage message

2015-10-02 Thread Michael Reed
This brings the usage info in line with most other programs. Index: acpidump.c === RCS file: /cvs/src/usr.sbin/acpidump/acpidump.c,v retrieving revision 1.13 diff -u -p -r1.13 acpidump.c --- acpidump.c 3 Oct 2015 01:05:12 -

Re: more on tame

2015-10-04 Thread Michael Reed
perror(3) is being used instead of err(3) in a few places; is that on purpose? If it's an oversight, I also noticed the same in patch(1). On 10/04/15 01:34, Theo de Raadt wrote: > 42 tame calls have been commited to 28 userland programs so far. > For instance gzip, md5, ping, traceroute, tcpdump

pkg_(add|delete|info): fix synopses

2015-10-04 Thread Michael Reed
The use of an ellipsis in manuals usually seems to already imply optional arguments, e.g., `.Op Ar file ...', so constructs like `Ar pkg-name Op Ar ...' seem redundant to me. While here, also denote the `pkg-name' argument to pkg_delete as optional, since you can do things like `pkg_delete -nX'.

Re: bsd.port.mk.5: restructure `clean' section

2015-10-05 Thread Michael Reed
ping On 09/26/15 14:49, Michael Reed wrote: > The `clean' target takes optional arguments, so denote that in > the item header. Additionally, the subtargets are fixed strings, > not variables, so change the use of Va to Cm to reflect that. > > &g

skey(1) cleanup

2015-10-09 Thread Michael Reed
The argument passed to usage() was always the same (argv[0]), so this patch removes the parameter and uses __progname instead. The usage message was misaligned, so I fixed that as well. Index: skey.c === RCS file: /cvs/src/usr.bin/sk

Re: skey(1) cleanup

2015-10-09 Thread Michael Reed
On 10/09/15 11:03, Tim van der Molen wrote: > Michael Reed (2015-10-09 09:10 +0200): >> The argument passed to usage() was always the same (argv[0]), so >> this patch removes the parameter and uses __progname instead. >> The usage message was misaligned, so I fixed that a

Re: skey(1) cleanup

2015-10-09 Thread Michael Reed
On 10/09/15 19:06, Tim van der Molen wrote: > Michael Reed (2015-10-09 23:21 +0200): >> On 10/09/15 11:03, Tim van der Molen wrote: >>> Michael Reed (2015-10-09 09:10 +0200): >>>> The argument passed to usage() was always the same (argv[0]), so >>>>

sendbug(1): remove -V flag

2015-10-11 Thread Michael Reed
The version is stored in a constant string which is prone to become outdated, as has happened here. uname(3) could be used to make sure it's always up to date, but I don't see the point given uname(1)'s `r' flag already does this. Index: sendbug.1

ctags.1: stop misusing Nm

2015-10-14 Thread Michael Reed
If the author wanted to emphasize these terms then they should have used Sy or Em, but I wasn't convinced that the terms below needed emphasis so I just removed the Nm usage altogether. Index: ctags.1 === RCS file: /cvs/src/usr.bin/c

aucat.1: small cleanup

2015-10-16 Thread Michael Reed
The use of Bk/Ek and Xo/Xc was not needed, as confirmed by "diff <{mandoc old.1} <{mandoc new.1} | less". The only visible changes should be the Ar -> Cm conversions. Index: aucat.1 === RCS file: /cvs/src/usr.bin/aucat/aucat.1,v ret

locate(1): small cleanup

2015-10-23 Thread Michael Reed
- mmap support was recently made the default, but the includes were left unsorted; this diff deals with that - remove optarg & optind declarations as unistd.h already does this - remove `#ifdef sun' block: htohl() isn't used anywhere here, although ntohl() is in util.c (perhaps endian.h shoul

less: use __progname

2015-11-05 Thread Michael Reed
Not sure if such changes which diverge from upstream are wanted, but here it is. Index: less.h === RCS file: /cvs/src/usr.bin/less/less.h,v retrieving revision 1.11 diff -u -p -r1.11 less.h --- less.h 5 Nov 2015 22:18:27 -

less(1): fix implicit declaration

2015-11-09 Thread Michael Reed
Index: main.c === RCS file: /cvs/src/usr.bin/less/main.c,v retrieving revision 1.26 diff -u -p -r1.26 main.c --- main.c 9 Nov 2015 18:41:46 - 1.26 +++ main.c 9 Nov 2015 21:09:46 - @@ -13,6 +13,7 @@ * Entry poi

less.1: secure mode is not a compile-time option

2015-11-15 Thread Michael Reed
>From https://github.com/gdamore/less-fork/blob/master/CHANGES#L35-L37 * SECURE mode (limited features) is removed - this version of less is always fully featured. (It was a compile-time option.) Download official less if you need restricted mode. (Hint: zones or chroot are better solutio

less.1: Update for LESSCHARSET removal

2015-11-22 Thread Michael Reed
Index: less.1 === RCS file: /cvs/src/usr.bin/less/less.1,v retrieving revision 1.50 diff -u -p -r1.50 less.1 --- less.1 15 Nov 2015 21:05:56 - 1.50 +++ less.1 23 Nov 2015 06:15:22 - @@ -1424,67 +1424,9 @@ in text

lesskey.1: Don't mention email address

2015-11-22 Thread Michael Reed
This was already done for less.1, as OpenBSD's less(1) differs substantially from upstream. Index: lesskey.1 === RCS file: /cvs/src/usr.bin/less/lesskey.1,v retrieving revision 1.13 diff -u -p -r1.13 lesskey.1 --- lesskey.1 5 Nov

ksh.1: simplify SYNOPSIS a bit

2015-12-25 Thread Michael Reed
Literal pipe characters are easier to read and there isn't any difference in the output for mandoc(1) -Thtml and -Tutf8. \*(Ba is still used elsewhere in ksh.1, although I didn't touch those as I'm unsure if this change is even wanted. Index: ksh.1 ===

ksh.1: Remove $ERRNO reference

2015-12-25 Thread Michael Reed
It's had the ``Not implemented'' notice since ksh.1's initial import 19 years ago [1], so it's probably not going to be implemented. [1]: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin/ksh/ksh.1?rev=1.1&content-type=text/x-cvsweb-markup Index: ksh.1 ==

sed(1): Fix incomplete error message

2016-01-01 Thread Michael Reed
Hi, I noticed that when doing `sed -i` on a file you don't have permission to read, the error message printed isn't very helpful: $ sed -i '/test/d' /var/log/Xorg.1.log.old sed: /var/log/Xorg.1.log.old The patch below seems to fix the issue for me: $ ./sed -i '/test/d' /var/log/Xorg.1.log

fuser(1): Fix pledge when `u' flag is used

2016-01-01 Thread Michael Reed
Hi, `fuser -u -c /' doesn't seem to work for me: fuser(28663): syscall 33 "getpw" The patch below fixes my issue. The pledge condition was already a bit long, so I just switched to snprintf(3); not sure what's normally done in such situations. Regards, Michael Index: fstat.c =

sys/dev/uaudio.c: Fix broken links

2017-01-28 Thread Michael Reed
Index: uaudio.c === RCS file: /cvs/src/sys/dev/usb/uaudio.c,v retrieving revision 1.122 diff -u -p -r1.122 uaudio.c --- uaudio.c3 Jan 2017 06:45:58 - 1.122 +++ uaudio.c28 Jan 2017 15:57:12 - @@ -32,9 +32,9 @@ *

acme-client.1: fix broken example

2017-01-28 Thread Michael Reed
One of the examples is broken: $ acme-client -vN www.example.com acme-client: unknown option -- N usage: acme-client [-ADFnrv] [-f configfile] domain This commit [0] makes me think that -D should be used instead, but I'm not sure. P.s.: This man page also contains a refe

lib/libc/sys/pledge.2: Fix comment

2017-01-29 Thread Michael Reed
It seem that sio_open(3) is more relevant to the "audio" pledge than the "bpf" one, so move the reference accordingly. Index: pledge.2 === RCS file: /cvs/src/lib/libc/sys/pledge.2,v retrieving revision 1.39 diff -u -p -r1.39 pledge.

Fix wxabort refs in mmap and mprotect man pages

2017-03-10 Thread Michael Reed
The sysctl(3) man page does not seem to contain anything about kern.exabort. While here, also use proper .Xr markup. Index: mmap.2 === RCS file: /cvs/src/lib/libc/sys/mmap.2,v retrieving revision 1.52 diff -u -p -r1.52 mmap.2 --- mm

cdio(1): introduce acronym on first use

2017-03-18 Thread Michael Reed
That way the user doesn't have to scroll through the man page to find what it stands for. On a side note, googling for "tao cd" is not helpful, but googling "track at once" is. diff --git a/usr.bin/cdio/cdio.1 b/usr.bin/cdio/cdio.1 index ff350ca8f..900449b0a 100644 --- a/usr.bin/cdio/cdio.1 ++

cdio: don't print message about "file not multiple of block length"

2017-03-18 Thread Michael Reed
It seems as if cdio copes fine regardless of whether the file is a multiple of the block length, so is it really so important that the message is printed unconditionally? This patch makes it so that the "-v" flag must be used at least once for that warning to print. diff --git a/usr.bin/cdio/m

cwmrc(5) small cleanup

2017-03-18 Thread Michael Reed
The signatures for the functions bind-key and bind-mouse do not match how they are used. diff --git a/app/cwm/cwmrc.5 b/app/cwm/cwmrc.5 index fbecaedb..1da9c08c 100644 --- a/app/cwm/cwmrc.5 +++ b/app/cwm/cwmrc.5 @@ -63,7 +63,7 @@ The name and class values, respectively, for existing windows ar

faq13.html: clarify cd burning instructions

2017-03-18 Thread Michael Reed
That way you don't do what I did and read through half the "Creating data CD-ROMs" section before realizing you're reading the wrong section. :) diff --git a/faq/faq13.html b/faq/faq13.html index 6f94803..28d04b9 100644 --- a/faq/faq13.html +++ b/faq/faq13.html @@ -615,6 +615,9 @@ copying files