Diff for /embedaddon/php/TSRM/tsrm_win32.c between versions 1.1.1.1 and 1.1.1.3

version 1.1.1.1, 2012/02/21 23:47:52 version 1.1.1.3, 2013/07/22 01:32:14
Line 2 Line 2
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
    | PHP Version 5                                                        |     | PHP Version 5                                                        |
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
   | Copyright (c) 1997-2012 The PHP Group                                |   | Copyright (c) 1997-2013 The PHP Group                                |
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
    | This source file is subject to version 3.01 of the PHP license,      |     | This source file is subject to version 3.01 of the PHP license,      |
    | that is bundled with this package in the file LICENSE, and is        |     | that is bundled with this package in the file LICENSE, and is        |
Line 190  Finished: Line 190  Finished:
         return NULL;          return NULL;
 }  }
   
TSRM_API int tsrm_win32_access(const char *pathname, int mode)TSRM_API int tsrm_win32_access(const char *pathname, int mode TSRMLS_DC)
 {  {
         time_t t;          time_t t;
        HANDLE thread_token;        HANDLE thread_token = NULL;
         PSID token_sid;          PSID token_sid;
         SECURITY_INFORMATION sec_info = OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION;          SECURITY_INFORMATION sec_info = OWNER_SECURITY_INFORMATION | GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION;
         GENERIC_MAPPING gen_map = { FILE_GENERIC_READ, FILE_GENERIC_WRITE, FILE_GENERIC_EXECUTE, FILE_ALL_ACCESS };          GENERIC_MAPPING gen_map = { FILE_GENERIC_READ, FILE_GENERIC_WRITE, FILE_GENERIC_EXECUTE, FILE_ALL_ACCESS };
Line 208  TSRM_API int tsrm_win32_access(const char *pathname, i Line 208  TSRM_API int tsrm_win32_access(const char *pathname, i
         realpath_cache_bucket * bucket = NULL;          realpath_cache_bucket * bucket = NULL;
         char * real_path = NULL;          char * real_path = NULL;
   
         TSRMLS_FETCH();  
   
         if (mode == 1 /*X_OK*/) {          if (mode == 1 /*X_OK*/) {
                 DWORD type;                  DWORD type;
                 return GetBinaryType(pathname, &type) ? 0 : -1;                  return GetBinaryType(pathname, &type) ? 0 : -1;
Line 365  Finished_Impersonate: Line 363  Finished_Impersonate:
                 }                  }
   
 Finished:  Finished:
                   if(thread_token != NULL) {
                           CloseHandle(thread_token);
                   }
                 if(real_path != NULL) {                  if(real_path != NULL) {
                         free(real_path);                          free(real_path);
                         real_path = NULL;                          real_path = NULL;
Line 448  static HANDLE dupHandle(HANDLE fh, BOOL inherit) { Line 449  static HANDLE dupHandle(HANDLE fh, BOOL inherit) {
   
 TSRM_API FILE *popen(const char *command, const char *type)  TSRM_API FILE *popen(const char *command, const char *type)
 {  {
        return popen_ex(command, type, NULL, NULL);        TSRMLS_FETCH();
 
         return popen_ex(command, type, NULL, NULL TSRMLS_CC);
 }  }
   
TSRM_API FILE *popen_ex(const char *command, const char *type, const char *cwd, char *env)TSRM_API FILE *popen_ex(const char *command, const char *type, const char *cwd, char *env TSRMLS_DC)
 {  {
         FILE *stream = NULL;          FILE *stream = NULL;
         int fno, type_len = strlen(type), read, mode;          int fno, type_len = strlen(type), read, mode;
Line 468  TSRM_API FILE *popen_ex(const char *command, const cha Line 471  TSRM_API FILE *popen_ex(const char *command, const cha
         HANDLE thread_token = NULL;          HANDLE thread_token = NULL;
         HANDLE token_user = NULL;          HANDLE token_user = NULL;
         BOOL asuser = TRUE;          BOOL asuser = TRUE;
   
         TSRMLS_FETCH();  
   
         if (!type) {          if (!type) {
                 return NULL;                  return NULL;

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>