Hi/2. Sergey Poznyakoff wrote: >> @@ -1362,6 +1362,10 @@ parse_opt (int key, char *arg, struct argp_state >> *state) >> { >> struct tar_args *args = state->input; >> >> +#ifdef __OS2__ >> + force_local_option = true; >> +#endif >> + > > Applying this will make it impossible to access remote archives. >
Ok. I've fixed rmt.h instead. But it is in paxutils. Here is the place for it ? I have some patches for paxutils. Anyway I attach a patch for rmt.h of paxutils. -- KO Myung-Hun Using Mozilla SeaMonkey 2.7.2 Under OS/2 Warp 4 for Korean with FixPak #15 In VirtualBox v4.1.32 on Intel Core i7-3615QM 2.30GHz with 8GB RAM Korean OS/2 User Community : http://www.ecomstation.co.kr
From a2ead57945e5b3a1e892774b30aacb46df744564 Mon Sep 17 00:00:00 2001 From: KO Myung-Hun <k...@chollian.net> Date: Tue, 18 Nov 2014 10:21:15 +0900 Subject: [PATCH] Check if dev_name is a drive letter On OS/2, 'x:' is a drive letter not a remote device. * lib/rmt.h (_remdev): Check if dev_name is a drive letter. (_drivedev): New. --- lib/rmt.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/rmt.h b/lib/rmt.h index ff10e7c..da46119 100644 --- a/lib/rmt.h +++ b/lib/rmt.h @@ -35,10 +35,19 @@ extern bool force_local_option; Distributed File System (DFS). However, when --force-local, a filename is never remote. */ +#ifdef __OS2__ +# define _drivedev(dev_name) \ + ((((dev_name)[0] >= 'a' && (dev_name)[0] <= 'z') || \ + ((dev_name)[0] >= 'A' && (dev_name)[0] <= 'Z')) && ((dev_name)[1] == ':')) +#else +# define _drivedev(dev_name) 0 +#endif + #define _remdev(dev_name) \ (!force_local_option && (rmt_dev_name__ = strchr (dev_name, ':')) \ && rmt_dev_name__ > (dev_name) \ - && ! memchr (dev_name, '/', rmt_dev_name__ - (dev_name))) + && ! memchr (dev_name, '/', rmt_dev_name__ - (dev_name)) \ + && ! _drivedev(dev_name)) #define _isrmt(fd) \ ((fd) >= __REM_BIAS) -- 1.8.5.2