Lines Matching refs:descriptors

421 	struct php_proc_open_descriptor_item *descriptors = NULL;  in PHP_FUNCTION()  local
495 descriptors = safe_emalloc(sizeof(struct php_proc_open_descriptor_item), ndescriptors_array, 0); in PHP_FUNCTION()
497 memset(descriptors, 0, sizeof(struct php_proc_open_descriptor_item) * ndescriptors_array); in PHP_FUNCTION()
516 descriptors[ndesc].index = (int)nindex; in PHP_FUNCTION()
530 descriptors[ndesc].childend = dup_fd_as_handle((int)fd); in PHP_FUNCTION()
531 if (descriptors[ndesc].childend == NULL) { in PHP_FUNCTION()
536 descriptors[ndesc].childend = dup(fd); in PHP_FUNCTION()
537 if (descriptors[ndesc].childend < 0) { in PHP_FUNCTION()
542 descriptors[ndesc].mode = DESC_FILE; in PHP_FUNCTION()
567 descriptors[ndesc].mode = DESC_PIPE; in PHP_FUNCTION()
575 descriptors[ndesc].parentend = newpipe[1]; in PHP_FUNCTION()
576 descriptors[ndesc].childend = newpipe[0]; in PHP_FUNCTION()
577 descriptors[ndesc].mode |= DESC_PARENT_MODE_WRITE; in PHP_FUNCTION()
579 descriptors[ndesc].parentend = newpipe[0]; in PHP_FUNCTION()
580 descriptors[ndesc].childend = newpipe[1]; in PHP_FUNCTION()
584 descriptors[ndesc].parentend = dup_handle(descriptors[ndesc].parentend, FALSE, TRUE); in PHP_FUNCTION()
586descriptors[ndesc].mode_flags = descriptors[ndesc].mode & DESC_PARENT_MODE_WRITE ? O_WRONLY : O_RD… in PHP_FUNCTION()
589 descriptors[ndesc].mode_flags |= O_BINARY; in PHP_FUNCTION()
597 descriptors[ndesc].mode = DESC_FILE; in PHP_FUNCTION()
625 descriptors[ndesc].childend = dup_fd_as_handle((int)fd); in PHP_FUNCTION()
631 SetFilePointer(descriptors[ndesc].childend, 0, NULL, FILE_END); in PHP_FUNCTION()
634 descriptors[ndesc].childend = fd; in PHP_FUNCTION()
654 descriptors[ndesc].mode = DESC_PIPE; in PHP_FUNCTION()
655 descriptors[ndesc].childend = dup(slave_pty); in PHP_FUNCTION()
656 descriptors[ndesc].parentend = dup(dev_ptmx); in PHP_FUNCTION()
657 descriptors[ndesc].mode_flags = O_RDWR; in PHP_FUNCTION()
696 switch(descriptors[i].index) { in PHP_FUNCTION()
698 si.hStdInput = descriptors[i].childend; in PHP_FUNCTION()
701 si.hStdOutput = descriptors[i].childend; in PHP_FUNCTION()
704 si.hStdError = descriptors[i].childend; in PHP_FUNCTION()
779 CloseHandle(descriptors[i].childend); in PHP_FUNCTION()
780 if (descriptors[i].parentend) { in PHP_FUNCTION()
781 CloseHandle(descriptors[i].parentend); in PHP_FUNCTION()
824 switch (descriptors[i].mode & ~DESC_PARENT_MODE_WRITE) { in PHP_FUNCTION()
826 close(descriptors[i].parentend); in PHP_FUNCTION()
829 if (dup2(descriptors[i].childend, descriptors[i].index) < 0) in PHP_FUNCTION()
831 if (descriptors[i].childend != descriptors[i].index) in PHP_FUNCTION()
832 close(descriptors[i].childend); in PHP_FUNCTION()
851 close(descriptors[i].childend); in PHP_FUNCTION()
852 if (descriptors[i].parentend) in PHP_FUNCTION()
853 close(descriptors[i].parentend); in PHP_FUNCTION()
893 close_descriptor(descriptors[i].childend); in PHP_FUNCTION()
895 switch (descriptors[i].mode & ~DESC_PARENT_MODE_WRITE) { in PHP_FUNCTION()
897 switch(descriptors[i].mode_flags) { in PHP_FUNCTION()
917 stream = php_stream_fopen_from_fd(_open_osfhandle((zend_intptr_t)descriptors[i].parentend, in PHP_FUNCTION()
918 descriptors[i].mode_flags), mode_string, NULL); in PHP_FUNCTION()
921 stream = php_stream_fopen_from_fd(descriptors[i].parentend, mode_string, NULL); in PHP_FUNCTION()
924 fcntl(descriptors[i].parentend, F_SETFD, FD_CLOEXEC); in PHP_FUNCTION()
934 add_index_zval(pipes, descriptors[i].index, &retfp); in PHP_FUNCTION()
945 efree(descriptors); in PHP_FUNCTION()
950 efree(descriptors); in PHP_FUNCTION()