comparison src/syscalls.cc @ 3523:b80bbb43a1a9

[project @ 2000-02-02 10:25:52 by jwe]
author jwe
date Wed, 02 Feb 2000 10:26:25 +0000
parents d25bc039237b
children 97cf542676e1
comparison
equal deleted inserted replaced
3522:bd422cf62f0c 3523:b80bbb43a1a9
99 system-dependent error message.\n\ 99 system-dependent error message.\n\
100 @end deftypefn") 100 @end deftypefn")
101 { 101 {
102 octave_value_list retval; 102 octave_value_list retval;
103 103
104 retval(1) = string (); 104 retval(1) = std::string ();
105 retval(0) = -1.0; 105 retval(0) = -1.0;
106 106
107 int nargin = args.length (); 107 int nargin = args.length ();
108 108
109 if (nargin == 2) 109 if (nargin == 2)
121 int i_old = old_stream.file_number (); 121 int i_old = old_stream.file_number ();
122 int i_new = new_stream.file_number (); 122 int i_new = new_stream.file_number ();
123 123
124 if (i_old >= 0 && i_new >= 0) 124 if (i_old >= 0 && i_new >= 0)
125 { 125 {
126 string msg; 126 std::string msg;
127 127
128 int status = octave_syscalls::dup2 (i_old, i_new, msg); 128 int status = octave_syscalls::dup2 (i_old, i_new, msg);
129 129
130 retval(0) = static_cast<double> (status); 130 retval(0) = static_cast<double> (status);
131 retval(1) = msg; 131 retval(1) = msg;
160 error message.\n\ 160 error message.\n\
161 @end deftypefn") 161 @end deftypefn")
162 { 162 {
163 octave_value_list retval; 163 octave_value_list retval;
164 164
165 retval(1) = string (); 165 retval(1) = std::string ();
166 retval(0) = -1.0; 166 retval(0) = -1.0;
167 167
168 int nargin = args.length (); 168 int nargin = args.length ();
169 169
170 if (nargin == 1 || nargin == 2) 170 if (nargin == 1 || nargin == 2)
171 { 171 {
172 string exec_file = args(0).string_value (); 172 std::string exec_file = args(0).string_value ();
173 173
174 if (! error_state) 174 if (! error_state)
175 { 175 {
176 string_vector exec_args; 176 string_vector exec_args;
177 177
200 exec_args[0] = exec_file; 200 exec_args[0] = exec_file;
201 } 201 }
202 202
203 if (! error_state) 203 if (! error_state)
204 { 204 {
205 string msg; 205 std::string msg;
206 206
207 int status = octave_syscalls::execvp (exec_file, exec_args, msg); 207 int status = octave_syscalls::execvp (exec_file, exec_args, msg);
208 208
209 retval(0) = static_cast<double> (status); 209 retval(0) = static_cast<double> (status);
210 retval(1) = msg; 210 retval(1) = msg;
273 system-dependent error message.\n\ 273 system-dependent error message.\n\
274 @end deftypefn") 274 @end deftypefn")
275 { 275 {
276 octave_value_list retval; 276 octave_value_list retval;
277 277
278 retval(1) = string (); 278 retval(1) = std::string ();
279 retval(0) = -1.0; 279 retval(0) = -1.0;
280 280
281 int nargin = args.length (); 281 int nargin = args.length ();
282 282
283 if (nargin == 3) 283 if (nargin == 3)
291 // XXX FIXME XXX -- Need better checking here? 291 // XXX FIXME XXX -- Need better checking here?
292 if (fid < 0) 292 if (fid < 0)
293 error ("fcntl: invalid file id"); 293 error ("fcntl: invalid file id");
294 else 294 else
295 { 295 {
296 string msg; 296 std::string msg;
297 297
298 int status = octave_syscalls::fcntl (fid, req, arg, msg); 298 int status = octave_syscalls::fcntl (fid, req, arg, msg);
299 299
300 retval(0) = static_cast<double> (status); 300 retval(0) = static_cast<double> (status);
301 retval(1) = msg; 301 retval(1) = msg;
333 @end table\n\ 333 @end table\n\
334 @end deftypefn") 334 @end deftypefn")
335 { 335 {
336 octave_value_list retval; 336 octave_value_list retval;
337 337
338 retval(1) = string (); 338 retval(1) = std::string ();
339 retval(0) = -1.0; 339 retval(0) = -1.0;
340 340
341 int nargin = args.length (); 341 int nargin = args.length ();
342 342
343 if (nargin == 0) 343 if (nargin == 0)
344 { 344 {
345 string msg; 345 std::string msg;
346 346
347 pid_t pid = octave_syscalls::fork (msg); 347 pid_t pid = octave_syscalls::fork (msg);
348 348
349 retval(0) = static_cast<double> (pid); 349 retval(0) = static_cast<double> (pid);
350 retval(1) = msg; 350 retval(1) = msg;
361 Return the process group id of the current process.\n\ 361 Return the process group id of the current process.\n\
362 @end deftypefn") 362 @end deftypefn")
363 { 363 {
364 octave_value_list retval; 364 octave_value_list retval;
365 365
366 retval(1) = string (); 366 retval(1) = std::string ();
367 retval(0) = -1.0; 367 retval(0) = -1.0;
368 368
369 int nargin = args.length (); 369 int nargin = args.length ();
370 370
371 if (nargin == 0) 371 if (nargin == 0)
372 { 372 {
373 string msg; 373 std::string msg;
374 374
375 retval(0) = static_cast<double> (octave_syscalls::getpgrp (msg)); 375 retval(0) = static_cast<double> (octave_syscalls::getpgrp (msg));
376 retval(1) = msg; 376 retval(1) = msg;
377 } 377 }
378 else 378 else
497 { 497 {
498 octave_value_list retval; 498 octave_value_list retval;
499 499
500 if (args.length () == 1) 500 if (args.length () == 1)
501 { 501 {
502 string fname = file_ops::tilde_expand (args(0).string_value ()); 502 std::string fname = file_ops::tilde_expand (args(0).string_value ());
503 503
504 if (! error_state) 504 if (! error_state)
505 { 505 {
506 file_stat fs (fname, false); 506 file_stat fs (fname, false);
507 507
508 if (fs) 508 if (fs)
509 { 509 {
510 retval(2) = string (); 510 retval(2) = std::string ();
511 retval(1) = 0.0; 511 retval(1) = 0.0;
512 retval(0) = octave_value (mk_stat_map (fs)); 512 retval(0) = octave_value (mk_stat_map (fs));
513 } 513 }
514 else 514 else
515 { 515 {
537 system-dependent error message.\n\ 537 system-dependent error message.\n\
538 @end deftypefn") 538 @end deftypefn")
539 { 539 {
540 octave_value_list retval; 540 octave_value_list retval;
541 541
542 retval(1) = string (); 542 retval(1) = std::string ();
543 retval(0) = -1.0; 543 retval(0) = -1.0;
544 544
545 int nargin = args.length (); 545 int nargin = args.length ();
546 546
547 if (nargin == 2) 547 if (nargin == 2)
548 { 548 {
549 if (args(0).is_string ()) 549 if (args(0).is_string ())
550 { 550 {
551 string name = args(0).string_value (); 551 std::string name = args(0).string_value ();
552 552
553 if (args(1).is_scalar_type ()) 553 if (args(1).is_scalar_type ())
554 { 554 {
555 long mode = static_cast<long> (args(1).double_value ()); 555 long mode = static_cast<long> (args(1).double_value ());
556 556
557 string msg; 557 std::string msg;
558 558
559 int status = file_ops::mkfifo (name, mode, msg); 559 int status = file_ops::mkfifo (name, mode, msg);
560 560
561 retval(0) = static_cast<double> (status); 561 retval(0) = static_cast<double> (status);
562 562
586 system-dependent error message.\n\ 586 system-dependent error message.\n\
587 @end deftypefn") 587 @end deftypefn")
588 { 588 {
589 octave_value_list retval; 589 octave_value_list retval;
590 590
591 retval(2) = string (); 591 retval(2) = std::string ();
592 retval(1) = -1.0; 592 retval(1) = -1.0;
593 retval(0) = Matrix (); 593 retval(0) = Matrix ();
594 594
595 int nargin = args.length (); 595 int nargin = args.length ();
596 596
597 if (nargin == 0) 597 if (nargin == 0)
598 { 598 {
599 int fid[2]; 599 int fid[2];
600 600
601 string msg; 601 std::string msg;
602 602
603 int status = octave_syscalls::pipe (fid, msg); 603 int status = octave_syscalls::pipe (fid, msg);
604 604
605 if (status < 0) 605 if (status < 0)
606 retval(2) = msg; 606 retval(2) = msg;
607 else 607 else
608 { 608 {
609 FILE *ifile = fdopen (fid[0], "r"); 609 FILE *ifile = fdopen (fid[0], "r");
610 FILE *ofile = fdopen (fid[1], "w"); 610 FILE *ofile = fdopen (fid[1], "w");
611 611
612 octave_stream is = octave_istdiostream::create (string (), ifile); 612 octave_stream is = octave_istdiostream::create (std::string (), ifile);
613 octave_stream os = octave_ostdiostream::create (string (), ofile); 613 octave_stream os = octave_ostdiostream::create (std::string (), ofile);
614 614
615 octave_value_list file_ids; 615 octave_value_list file_ids;
616 616
617 file_ids(1) = octave_stream_list::insert (os); 617 file_ids(1) = octave_stream_list::insert (os);
618 file_ids(0) = octave_stream_list::insert (is); 618 file_ids(0) = octave_stream_list::insert (is);
717 { 717 {
718 octave_value_list retval; 718 octave_value_list retval;
719 719
720 if (args.length () == 1) 720 if (args.length () == 1)
721 { 721 {
722 string fname = file_ops::tilde_expand (args(0).string_value ()); 722 std::string fname = file_ops::tilde_expand (args(0).string_value ());
723 723
724 if (! error_state) 724 if (! error_state)
725 { 725 {
726 file_stat fs (fname); 726 file_stat fs (fname);
727 727
728 if (fs) 728 if (fs)
729 { 729 {
730 retval(2) = string (); 730 retval(2) = std::string ();
731 retval(1) = 0.0; 731 retval(1) = 0.0;
732 retval(0) = octave_value (mk_stat_map (fs)); 732 retval(0) = octave_value (mk_stat_map (fs));
733 } 733 }
734 else 734 else
735 { 735 {
755 system-dependent error message.\n\ 755 system-dependent error message.\n\
756 @end deftypefn") 756 @end deftypefn")
757 { 757 {
758 octave_value_list retval; 758 octave_value_list retval;
759 759
760 retval(1) = string (); 760 retval(1) = std::string ();
761 retval(0) = -1.0; 761 retval(0) = -1.0;
762 762
763 int nargin = args.length (); 763 int nargin = args.length ();
764 764
765 if (nargin == 1) 765 if (nargin == 1)
766 { 766 {
767 if (args(0).is_string ()) 767 if (args(0).is_string ())
768 { 768 {
769 string name = args(0).string_value (); 769 std::string name = args(0).string_value ();
770 770
771 string msg; 771 std::string msg;
772 772
773 int status = file_ops::unlink (name, msg); 773 int status = file_ops::unlink (name, msg);
774 774
775 retval(0) = static_cast<double> (status); 775 retval(0) = static_cast<double> (status);
776 retval(1) = msg; 776 retval(1) = msg;
825 message.\n\ 825 message.\n\
826 @end deftypefn") 826 @end deftypefn")
827 { 827 {
828 octave_value_list retval; 828 octave_value_list retval;
829 829
830 retval(1) = string (); 830 retval(1) = std::string ();
831 retval(0) = -1.0; 831 retval(0) = -1.0;
832 832
833 int nargin = args.length (); 833 int nargin = args.length ();
834 834
835 if (nargin == 1 || nargin == 2) 835 if (nargin == 1 || nargin == 2)
853 error ("waitpid: OPTIONS must be in integer"); 853 error ("waitpid: OPTIONS must be in integer");
854 } 854 }
855 855
856 if (! error_state) 856 if (! error_state)
857 { 857 {
858 string msg; 858 std::string msg;
859 859
860 pid_t status = octave_syscalls::waitpid (pid, options, msg); 860 pid_t status = octave_syscalls::waitpid (pid, options, msg);
861 861
862 retval(0) = static_cast<double> (status); 862 retval(0) = static_cast<double> (status);
863 retval(1) = msg; 863 retval(1) = msg;