Mercurial > octave
annotate libinterp/corefcn/__ftp__.cc @ 28693:2bb050267d74
maint: Remove trailing spaces from code base.
* NEWS, __ftp__.cc, graphics.in.h, rng.m, importdata.m, condest.m,
fieldnames.m, uninstall.m, polyfit.m, dec2bin.m, dec2hex.m:
Remove trailing spaces from code base.
author | Rik <rik@octave.org> |
---|---|
date | Tue, 08 Sep 2020 08:34:28 -0700 |
parents | 159b6a1eb408 |
children | 28913793f678 |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
3 // Copyright (C) 2006-2020 The Octave Project Developers |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
4 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
7 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
8 // This file is part of Octave. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
9 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
13 // (at your option) any later version. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
14 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
18 // GNU General Public License for more details. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
19 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
25 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
26 #if defined (HAVE_CONFIG_H) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
27 # include "config.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
28 #endif |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
29 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
30 #include <string> |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
31 #include <fstream> |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
32 #include <iomanip> |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
33 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
34 #include "dir-ops.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
35 #include "file-ops.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
36 #include "file-stat.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
37 #include "lo-sysdep.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
38 #include "oct-env.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
39 #include "oct-handle.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
40 #include "glob-match.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
41 #include "url-transfer.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
42 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
43 #include "defun.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
44 #include "error.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
45 #include "interpreter.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
46 #include "oct-map.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
47 #include "oct-refcount.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
48 #include "ov-cell.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
49 #include "ov-classdef.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
50 #include "ovl.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
51 #include "pager.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
52 #include "unwind-prot.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
53 #include "url-handle-manager.h" |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
54 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
55 static void |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
56 delete_file (const std::string& file) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
57 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
58 octave::sys::unlink (file); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
59 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
60 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
61 DEFMETHOD (__ftp__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
62 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
63 @deftypefn {} {@var{handle} =} __ftp__ (@var{host}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
64 @deftypefnx {} {@var{handle} =} __ftp__ (@var{host}, @var{username}, @var{password}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
65 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
66 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
67 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
68 int nargin = args.length (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
69 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
70 if (nargin < 1 || nargin > 3) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
71 print_usage (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
72 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
73 std::string host = args(0).xstring_value ("__ftp__: HOST must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
74 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
75 std::string user = (nargin > 1) |
27932
b018f553fd85
maint: Use Octave coding conventions in libinterp/
Rik <rik@octave.org>
parents:
27923
diff
changeset
|
76 ? args(1).xstring_value ("__ftp__: USER must be a string") |
b018f553fd85
maint: Use Octave coding conventions in libinterp/
Rik <rik@octave.org>
parents:
27923
diff
changeset
|
77 : "anonymous"; |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
78 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
79 std::string passwd = (nargin > 2) |
27932
b018f553fd85
maint: Use Octave coding conventions in libinterp/
Rik <rik@octave.org>
parents:
27923
diff
changeset
|
80 ? args(2).xstring_value ("__ftp__: PASSWD must be a string") |
b018f553fd85
maint: Use Octave coding conventions in libinterp/
Rik <rik@octave.org>
parents:
27923
diff
changeset
|
81 : ""; |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
82 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
83 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
84 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
85 octave::url_handle uh = uhm.make_url_handle (host, user, passwd, |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
86 octave_stdout); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
87 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
88 return ovl (uh.value ()); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
89 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
90 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
91 DEFMETHOD (__ftp_pwd__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
92 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
93 @deftypefn {} {} __ftp_pwd__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
94 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
95 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
96 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
97 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
98 error ("__ftp_pwd__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
99 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
100 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
101 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
102 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
103 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
104 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
105 error ("__ftp_pwd__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
106 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
107 return ovl (url_xfer.pwd ()); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
108 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
109 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
110 DEFMETHOD (__ftp_cwd__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
111 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
112 @deftypefn {} {} __ftp_cwd__ (@var{handle}, @var{path}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
113 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
114 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
115 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
116 int nargin = args.length (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
117 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
118 if (nargin != 1 && nargin != 2) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
119 error ("__ftp_cwd__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
120 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
121 std::string path = ""; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
122 if (nargin > 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
123 path = args(1).xstring_value ("__ftp_cwd__: PATH must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
124 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
125 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
126 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
127 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
128 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
129 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
130 error ("__ftp_cwd__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
131 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
132 url_xfer.cwd (path); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
133 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
134 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
135 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
136 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
137 DEFMETHOD (__ftp_dir__, interp, args, nargout, |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
138 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
139 @deftypefn {} {} __ftp_dir__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
140 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
141 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
142 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
143 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
144 error ("__ftp_dir__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
145 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
146 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
147 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
148 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
149 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
150 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
151 error ("__ftp_dir__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
152 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
153 octave_value retval; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
154 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
155 if (nargout == 0) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
156 url_xfer.dir (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
157 else |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
158 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
159 string_vector sv = url_xfer.list (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
160 octave_idx_type n = sv.numel (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
161 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
162 if (n == 0) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
163 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
164 string_vector flds (5); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
165 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
166 flds(0) = "name"; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
167 flds(1) = "date"; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
168 flds(2) = "bytes"; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
169 flds(3) = "isdir"; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
170 flds(4) = "datenum"; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
171 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
172 retval = octave_map (flds); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
173 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
174 else |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
175 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
176 octave_map st; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
177 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
178 Cell filectime (dim_vector (n, 1)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
179 Cell filesize (dim_vector (n, 1)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
180 Cell fileisdir (dim_vector (n, 1)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
181 Cell filedatenum (dim_vector (n, 1)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
182 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
183 st.assign ("name", Cell (sv)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
184 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
185 for (octave_idx_type i = 0; i < n; i++) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
186 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
187 time_t ftime; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
188 bool fisdir; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
189 double fsize; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
190 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
191 url_xfer.get_fileinfo (sv(i), fsize, ftime, fisdir); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
192 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
193 fileisdir (i) = fisdir; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
194 filectime (i) = ctime (&ftime); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
195 filesize (i) = fsize; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
196 filedatenum (i) = double (ftime); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
197 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
198 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
199 st.assign ("date", filectime); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
200 st.assign ("bytes", filesize); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
201 st.assign ("isdir", fileisdir); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
202 st.assign ("datenum", filedatenum); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
203 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
204 retval = st; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
205 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
206 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
207 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
208 return retval; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
209 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
210 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
211 DEFMETHOD (__ftp_ascii__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
212 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
213 @deftypefn {} {} __ftp_ascii__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
214 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
215 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
216 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
217 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
218 error ("__ftp_ascii__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
219 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
220 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
221 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
222 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
223 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
224 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
225 error ("__ftp_ascii__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
226 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
227 url_xfer.ascii (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
228 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
229 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
230 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
231 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
232 DEFMETHOD (__ftp_binary__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
233 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
234 @deftypefn {} {} __ftp_binary__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
235 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
236 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
237 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
238 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
239 error ("__ftp_binary__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
240 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
241 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
242 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
243 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
244 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
245 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
246 error ("__ftp_binary__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
247 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
248 url_xfer.binary (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
249 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
250 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
251 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
252 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
253 DEFMETHOD (__ftp_close__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
254 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
255 @deftypefn {} {} __ftp_close__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
256 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
257 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
258 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
259 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
260 error ("__ftp_close__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
261 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
262 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
263 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
264 octave::url_handle h = uhm.lookup (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
265 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
266 if (! h.ok ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
267 error ("__ftp_close__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
268 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
269 uhm.free (h); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
270 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
271 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
272 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
273 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
274 DEFMETHOD (__ftp_mode__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
275 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
276 @deftypefn {} {} __ftp_mode__ (@var{handle}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
277 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
278 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
279 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
280 if (args.length () != 1) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
281 error ("__ftp_mode__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
282 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
283 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
284 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
285 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
286 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
287 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
288 error ("__ftp_binary__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
289 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
290 return ovl (url_xfer.is_ascii () ? "ascii" : "binary"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
291 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
292 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
293 DEFMETHOD (__ftp_delete__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
294 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
295 @deftypefn {} {} __ftp_delete__ (@var{handle}, @var{path}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
296 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
297 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
298 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
299 if (args.length () != 2) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
300 error ("__ftp_delete__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
301 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
302 std::string file = args(1).xstring_value ("__ftp_delete__: FILE must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
303 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
304 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
305 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
306 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
307 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
308 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
309 error ("__ftp_delete__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
310 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
311 url_xfer.del (file); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
312 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
313 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
314 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
315 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
316 DEFMETHOD (__ftp_rmdir__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
317 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
318 @deftypefn {} {} __ftp_rmdir__ (@var{handle}, @var{path}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
319 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
320 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
321 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
322 if (args.length () != 2) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
323 error ("__ftp_rmdir__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
324 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
325 std::string dir = args(1).xstring_value ("__ftp_rmdir__: DIR must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
326 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
327 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
328 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
329 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
330 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
331 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
332 error ("__ftp_rmdir__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
333 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
334 url_xfer.rmdir (dir); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
335 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
336 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
337 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
338 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
339 DEFMETHOD (__ftp_mkdir__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
340 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
341 @deftypefn {} {} __ftp_mkdir__ (@var{handle}, @var{path}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
342 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
343 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
344 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
345 if (args.length () != 2) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
346 error ("__ftp_mkdir__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
347 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
348 std::string dir = args(1).xstring_value ("__ftp_mkdir__: DIR must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
349 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
350 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
351 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
352 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
353 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
354 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
355 error ("__ftp_mkdir__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
356 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
357 url_xfer.mkdir (dir); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
358 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
359 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
360 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
361 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
362 DEFMETHOD (__ftp_rename__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
363 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
364 @deftypefn {} {} __ftp_rename__ (@var{handle}, @var{path}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
365 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
366 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
367 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
368 if (args.length () != 3) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
369 error ("__ftp_rename__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
370 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
371 std::string oldname = args(1).xstring_value ("__ftp_rename__: OLDNAME must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
372 std::string newname = args(2).xstring_value ("__ftp_rename__: NEWNAME must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
373 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
374 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
375 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
376 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
377 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
378 if (url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
379 error ("__ftp_rename__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
380 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
381 url_xfer.rename (oldname, newname); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
382 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
383 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
384 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
385 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
386 DEFMETHOD (__ftp_mput__, interp, args, nargout, |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
387 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
388 @deftypefn {} {} __ftp_mput__ (@var{handle}, @var{files}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
389 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
390 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
391 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
392 if (args.length () != 2) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
393 error ("__ftp_mput__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
394 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
395 std::string pat = args(1).xstring_value ("__ftp_mput__: PATTERN must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
396 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
397 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
398 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
399 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
400 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
401 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
402 error ("__ftp_mput__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
403 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
404 string_vector file_list; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
405 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
406 glob_match pattern (octave::sys::file_ops::tilde_expand (pat)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
407 string_vector files = pattern.glob (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
408 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
409 for (octave_idx_type i = 0; i < files.numel (); i++) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
410 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
411 std::string file = files(i); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
412 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
413 octave::sys::file_stat fs (file); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
414 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
415 if (! fs.exists ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
416 error ("__ftp__mput: file does not exist"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
417 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
418 if (fs.is_dir ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
419 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
420 file_list.append (url_xfer.mput_directory ("", file)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
421 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
422 if (! url_xfer.good ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
423 error ("__ftp_mput__: %s", url_xfer.lasterror ().c_str ()); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
424 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
425 else |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
426 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
427 // FIXME: Does ascii mode need to be flagged here? |
28693
2bb050267d74
maint: Remove trailing spaces from code base.
Rik <rik@octave.org>
parents:
28467
diff
changeset
|
428 std::ifstream ifile = |
28467
159b6a1eb408
Use wide character overload to open file streams on Windows.
Markus Mützel <markus.muetzel@gmx.de>
parents:
27985
diff
changeset
|
429 octave::sys::ifstream (file.c_str (), |
159b6a1eb408
Use wide character overload to open file streams on Windows.
Markus Mützel <markus.muetzel@gmx.de>
parents:
27985
diff
changeset
|
430 std::ios::in | std::ios::binary); |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
431 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
432 if (! ifile.is_open ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
433 error ("__ftp_mput__: unable to open file"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
434 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
435 url_xfer.put (file, ifile); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
436 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
437 ifile.close (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
438 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
439 if (! url_xfer.good ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
440 error ("__ftp_mput__: %s", url_xfer.lasterror ().c_str ()); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
441 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
442 file_list.append (file); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
443 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
444 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
445 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
446 if (nargout > 0) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
447 return ovl (file_list); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
448 else |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
449 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
450 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
451 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
452 DEFMETHOD (__ftp_mget__, interp, args, , |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
453 doc: /* -*- texinfo -*- |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
454 @deftypefn {} {} __ftp_mget__ (@var{handle}, @var{pattern}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
455 @deftypefnx {} {} __ftp_mget__ (@var{handle}, @var{pattern}, @var{target}) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
456 Undocumented internal function |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
457 @end deftypefn */) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
458 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
459 int nargin = args.length (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
460 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
461 if (nargin != 2 && nargin != 3) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
462 error ("__ftp_mget__: incorrect number of arguments"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
463 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
464 std::string file = args(1).xstring_value ("__ftp_mget__: PATTERN must be a string"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
465 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
466 std::string target; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
467 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
468 if (nargin == 3 && ! args(2).isempty ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
469 target = args(2).xstring_value ("__ftp_mget__: TARGET must be a string") |
27932
b018f553fd85
maint: Use Octave coding conventions in libinterp/
Rik <rik@octave.org>
parents:
27923
diff
changeset
|
470 + octave::sys::file_ops::dir_sep_str (); |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
471 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
472 octave::url_handle_manager& uhm = interp.get_url_handle_manager (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
473 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
474 octave::url_transfer url_xfer = uhm.get_object (args(0)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
475 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
476 if (! url_xfer.is_valid ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
477 error ("__ftp_mget__: invalid ftp handle"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
478 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
479 string_vector sv = url_xfer.list (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
480 octave_idx_type n = 0; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
481 glob_match pattern (file); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
482 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
483 for (octave_idx_type i = 0; i < sv.numel (); i++) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
484 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
485 if (pattern.match (sv(i))) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
486 { |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
487 n++; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
488 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
489 time_t ftime; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
490 bool fisdir; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
491 double fsize; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
492 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
493 url_xfer.get_fileinfo (sv(i), fsize, ftime, fisdir); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
494 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
495 if (fisdir) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
496 url_xfer.mget_directory (sv(i), target); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
497 else |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
498 { |
28467
159b6a1eb408
Use wide character overload to open file streams on Windows.
Markus Mützel <markus.muetzel@gmx.de>
parents:
27985
diff
changeset
|
499 std::ofstream ofile = |
159b6a1eb408
Use wide character overload to open file streams on Windows.
Markus Mützel <markus.muetzel@gmx.de>
parents:
27985
diff
changeset
|
500 octave::sys::ofstream ((target + sv(i)).c_str (), |
159b6a1eb408
Use wide character overload to open file streams on Windows.
Markus Mützel <markus.muetzel@gmx.de>
parents:
27985
diff
changeset
|
501 std::ios::out | std::ios::binary); |
27357
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
502 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
503 if (! ofile.is_open ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
504 error ("__ftp_mget__: unable to open file"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
505 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
506 octave::unwind_protect_safe frame; |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
507 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
508 frame.add_fcn (delete_file, target + sv(i)); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
509 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
510 url_xfer.get (sv(i), ofile); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
511 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
512 ofile.close (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
513 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
514 if (url_xfer.good ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
515 frame.discard (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
516 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
517 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
518 if (! url_xfer.good ()) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
519 error ("__ftp_mget__: %s", url_xfer.lasterror().c_str()); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
520 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
521 } |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
522 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
523 if (n == 0) |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
524 error ("__ftp_mget__: file not found"); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
525 |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
526 return ovl (); |
9c4d0ff7fbab
Extract FTP code from urlwrite.cc to __ftp__.cc for clarity.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
diff
changeset
|
527 } |