Exemple #1
0
 void moduleInit() override {
   HHVM_FE(snappy_compress);
   HHVM_FE(snappy_uncompress);
   HHVM_FALIAS(sncompress, snappy_compress);
   HHVM_FALIAS(snuncompress, snappy_uncompress);
   loadSystemlib();
 }
Exemple #2
0
void StandardExtension::initGc() {
  HHVM_FE(gc_enabled);
  HHVM_FE(gc_enable);
  HHVM_FE(gc_disable);
  HHVM_FE(gc_collect_cycles);
  loadSystemlib("std_gc");
}
Exemple #3
0
  void moduleInit() override {
    HHVM_RC_INT(JSON_HEX_TAG, k_JSON_HEX_TAG);
    HHVM_RC_INT(JSON_HEX_AMP, k_JSON_HEX_AMP);
    HHVM_RC_INT(JSON_HEX_APOS, k_JSON_HEX_APOS);
    HHVM_RC_INT(JSON_HEX_QUOT, k_JSON_HEX_QUOT);
    HHVM_RC_INT(JSON_FORCE_OBJECT, k_JSON_FORCE_OBJECT);
    HHVM_RC_INT(JSON_NUMERIC_CHECK, k_JSON_NUMERIC_CHECK);
    HHVM_RC_INT(JSON_UNESCAPED_SLASHES, k_JSON_UNESCAPED_SLASHES);
    HHVM_RC_INT(JSON_PRETTY_PRINT, k_JSON_PRETTY_PRINT);
    HHVM_RC_INT(JSON_UNESCAPED_UNICODE, k_JSON_UNESCAPED_UNICODE);
    HHVM_RC_INT(JSON_PARTIAL_OUTPUT_ON_ERROR, k_JSON_PARTIAL_OUTPUT_ON_ERROR);
    HHVM_RC_INT(JSON_PRESERVE_ZERO_FRACTION, k_JSON_PRESERVE_ZERO_FRACTION);
    HHVM_RC_INT(JSON_BIGINT_AS_STRING, k_JSON_BIGINT_AS_STRING);
    HHVM_RC_INT(JSON_FB_LOOSE, k_JSON_FB_LOOSE);
    HHVM_RC_INT(JSON_FB_UNLIMITED, k_JSON_FB_UNLIMITED);
    HHVM_RC_INT(JSON_FB_EXTRA_ESCAPES, k_JSON_FB_EXTRA_ESCAPES);
    HHVM_RC_INT(JSON_FB_COLLECTIONS, k_JSON_FB_COLLECTIONS);
    HHVM_RC_INT(JSON_FB_STABLE_MAPS, k_JSON_FB_STABLE_MAPS);
    HHVM_RC_INT(JSON_ERROR_NONE, k_JSON_ERROR_NONE);
    HHVM_RC_INT(JSON_ERROR_DEPTH, k_JSON_ERROR_DEPTH);
    HHVM_RC_INT(JSON_ERROR_STATE_MISMATCH, k_JSON_ERROR_STATE_MISMATCH);
    HHVM_RC_INT(JSON_ERROR_CTRL_CHAR, k_JSON_ERROR_CTRL_CHAR);
    HHVM_RC_INT(JSON_ERROR_SYNTAX, k_JSON_ERROR_SYNTAX);
    HHVM_RC_INT(JSON_ERROR_UTF8, k_JSON_ERROR_UTF8);
    HHVM_RC_INT(JSON_ERROR_RECURSION, k_JSON_ERROR_RECURSION);
    HHVM_RC_INT(JSON_ERROR_INF_OR_NAN, k_JSON_ERROR_INF_OR_NAN);
    HHVM_RC_INT(JSON_ERROR_UNSUPPORTED_TYPE, k_JSON_ERROR_UNSUPPORTED_TYPE);

    HHVM_FE(json_last_error);
    HHVM_FE(json_last_error_msg);
    HHVM_FE(json_encode);
    HHVM_FE(json_decode);

    loadSystemlib();
  }
Exemple #4
0
 void moduleInit() override {
   HHVM_FE(wddx_add_vars);
   HHVM_FE(wddx_packet_end);
   HHVM_FE(wddx_packet_start);
   HHVM_FE(wddx_serialize_value);
   HHVM_FE(wddx_serialize_vars);
   loadSystemlib();
 }
Exemple #5
0
void StandardExtension::initString() {
  HHVM_FE(wordwrap);

  HHVM_FE(sprintf);
  HHVM_FE(vsprintf);
  HHVM_FE(printf);
  HHVM_FE(vprintf);

  loadSystemlib("std_string");
}
Exemple #6
0
  void moduleInit() override {
    HHVM_RC_INT(XHPROF_FLAGS_NO_BUILTINS, NoTrackBuiltins);
    HHVM_RC_INT(XHPROF_FLAGS_CPU, TrackCPU);
    HHVM_RC_INT(XHPROF_FLAGS_MEMORY, TrackMemory);
    HHVM_RC_INT(XHPROF_FLAGS_VTSC, TrackVtsc);
    HHVM_RC_INT(XHPROF_FLAGS_TRACE, XhpTrace);
    HHVM_RC_INT(XHPROF_FLAGS_MEASURE_XHPROF_DISABLE, MeasureXhprofDisable);
    HHVM_RC_INT(XHPROF_FLAGS_MALLOC, TrackMalloc);
    HHVM_RC_INT(XHPROF_FLAGS_I_HAVE_INFINITE_MEMORY, IHaveInfiniteMemory);
    HHVM_RC_INT(SETPROFILE_FLAGS_ENTERS, EventHook::ProfileEnters);
    HHVM_RC_INT(SETPROFILE_FLAGS_EXITS, EventHook::ProfileExits);
    HHVM_RC_INT(SETPROFILE_FLAGS_DEFAULT, EventHook::ProfileDefault);
    HHVM_RC_INT(SETPROFILE_FLAGS_FRAME_PTRS, EventHook::ProfileFramePointers);
    HHVM_RC_INT(SETPROFILE_FLAGS_CTORS, EventHook::ProfileConstructors);

    HHVM_FE(fb_setprofile);
    HHVM_FE(xhprof_frame_begin);
    HHVM_FE(xhprof_frame_end);
    HHVM_FE(xhprof_enable);
    HHVM_FE(xhprof_disable);
    HHVM_FE(xhprof_network_enable);
    HHVM_FE(xhprof_network_disable);
    HHVM_FE(xhprof_sample_enable);
    HHVM_FE(xhprof_sample_disable);

    loadSystemlib();
  }
Exemple #7
0
  void moduleInit() override {
    // Charsets
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_UTF8.get(),
      FRIBIDI_CHAR_SET_UTF8
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_8859_6.get(),
      FRIBIDI_CHAR_SET_ISO8859_6
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_8859_8.get(),
      FRIBIDI_CHAR_SET_ISO8859_8
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_CP1255.get(),
      FRIBIDI_CHAR_SET_CP1255
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_CP1256.get(),
      FRIBIDI_CHAR_SET_CP1256
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_CHARSET_CAP_RTL.get(),
      FRIBIDI_CHAR_SET_CAP_RTL
    );

    // Directions
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_AUTO.get(),
      FRIBIDI_PAR_ON
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_LTR.get(),
      FRIBIDI_PAR_LTR
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_RTL.get(),
      FRIBIDI_PAR_RTL
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_WLTR.get(),
      FRIBIDI_PAR_WLTR
    );
    Native::registerConstant<KindOfInt64>(
      s_FRIBIDI_WRTL.get(),
      FRIBIDI_PAR_WRTL
    );

    HHVM_FE(fribidi_log2vis);
    HHVM_FE(fribidi_charset_info);
    HHVM_FE(fribidi_get_charsets);
    loadSystemlib();
  }
Exemple #8
0
void ApacheExtension::moduleInit() {
  if (Enable) {
    HHVM_FE(apache_note);
    HHVM_FE(apache_request_headers);
    HHVM_FE(apache_response_headers);
    HHVM_FE(apache_setenv);
    HHVM_FALIAS(getallheaders, apache_request_headers);
    HHVM_FE(apache_get_config);
    HHVM_FALIAS(HH\\get_headers_secure, get_headers_secure);
    loadSystemlib();
  }
}
Exemple #9
0
 virtual void moduleInit() {
   HHVM_FE(bcscale);
   HHVM_FE(bcadd);
   HHVM_FE(bcsub);
   HHVM_FE(bccomp);
   HHVM_FE(bcmul);
   HHVM_FE(bcdiv);
   HHVM_FE(bcmod);
   HHVM_FE(bcpow);
   HHVM_FE(bcpowmod);
   HHVM_FE(bcsqrt);
   loadSystemlib();
 }
Exemple #10
0
  void moduleInit() override {
    HHVM_FE(bzclose);
    HHVM_FE(bzread);
    HHVM_FE(bzwrite);
    HHVM_FE(bzopen);
    HHVM_FE(bzflush);
    HHVM_FE(bzerrstr);
    HHVM_FE(bzerror);
    HHVM_FE(bzerrno);
    HHVM_FE(bzcompress);
    HHVM_FE(bzdecompress);

    loadSystemlib("bz2");
  }
Exemple #11
0
  virtual void moduleInit() {
    IniSetting::Bind("bcmath.scale", "0", ini_on_update_long, ini_get_long,
                     &BCG(bc_precision));

    HHVM_FE(bcscale);
    HHVM_FE(bcadd);
    HHVM_FE(bcsub);
    HHVM_FE(bccomp);
    HHVM_FE(bcmul);
    HHVM_FE(bcdiv);
    HHVM_FE(bcmod);
    HHVM_FE(bcpow);
    HHVM_FE(bcpowmod);
    HHVM_FE(bcsqrt);
    loadSystemlib();
  }
Exemple #12
0
 virtual void moduleInit() {
   HHVM_FE(stream_get_filters);
   HHVM_FE(stream_filter_register);
   HHVM_FE(stream_filter_append);
   HHVM_FE(stream_filter_prepend);
   HHVM_FE(stream_filter_remove);
   HHVM_FE(stream_bucket_make_writeable);
   HHVM_FE(stream_bucket_append);
   HHVM_FE(stream_bucket_prepend);
   loadSystemlib("stream-user-filters");
 }
Exemple #13
0
  void moduleInit() override {
    HHVM_FE(thrift_protocol_write_binary);
    HHVM_FE(thrift_protocol_read_binary);
    HHVM_FE(thrift_protocol_read_binary_struct);
    HHVM_FE(thrift_protocol_set_compact_version);
    HHVM_FE(thrift_protocol_write_compact);
    HHVM_FE(thrift_protocol_read_compact);
    HHVM_FE(thrift_protocol_read_compact_struct);

    loadSystemlib("thrift");
  }
void StandardExtension::initStreamUserFilters() {
  HHVM_RC_INT(STREAM_FILTER_READ, k_STREAM_FILTER_READ);
  HHVM_RC_INT(STREAM_FILTER_WRITE, k_STREAM_FILTER_WRITE);
  HHVM_RC_INT(STREAM_FILTER_ALL, k_STREAM_FILTER_ALL);

  HHVM_FE(stream_get_filters);
  HHVM_FE(stream_filter_register);
  HHVM_FE(stream_filter_append);
  HHVM_FE(stream_filter_prepend);
  HHVM_FE(stream_filter_remove);
  HHVM_FE(stream_bucket_make_writeable);
  HHVM_FE(stream_bucket_append);
  HHVM_FE(stream_bucket_prepend);

  loadSystemlib("stream-user-filters");
}
  void moduleInit() override {
    HHVM_RC_INT(PHP_URL_SCHEME, k_PHP_URL_SCHEME);
    HHVM_RC_INT(PHP_URL_HOST, k_PHP_URL_HOST);
    HHVM_RC_INT(PHP_URL_PORT, k_PHP_URL_PORT);
    HHVM_RC_INT(PHP_URL_USER, k_PHP_URL_USER);
    HHVM_RC_INT(PHP_URL_PASS, k_PHP_URL_PASS);
    HHVM_RC_INT(PHP_URL_PATH, k_PHP_URL_PATH);
    HHVM_RC_INT(PHP_URL_QUERY, k_PHP_URL_QUERY);
    HHVM_RC_INT(PHP_URL_FRAGMENT, k_PHP_URL_FRAGMENT);
    HHVM_RC_INT(PHP_QUERY_RFC1738, k_PHP_QUERY_RFC1738);
    HHVM_RC_INT(PHP_QUERY_RFC3986, k_PHP_QUERY_RFC3986);
    HHVM_FE(base64_decode);
    HHVM_FE(base64_encode);
    HHVM_FE(get_headers);
    HHVM_FE(get_meta_tags);
    HHVM_FE(http_build_query);
    HHVM_FE(parse_url);
    HHVM_FE(rawurldecode);
    HHVM_FE(rawurlencode);
    HHVM_FE(urldecode);
    HHVM_FE(urlencode);

    loadSystemlib();
  }
Exemple #16
0
void GettextExtension::moduleInit() {
  HHVM_FE(textdomain);
  HHVM_FE(gettext);
  HHVM_FALIAS(_, gettext);
  HHVM_FE(dgettext);
  HHVM_FE(dcgettext);
  HHVM_FE(bindtextdomain);
#if HAVE_NGETTEXT
  HHVM_FE(ngettext);
#endif
#if HAVE_DNGETTEXT
  HHVM_FE(dngettext);
#endif
#if HAVE_DCNGETTEXT
  HHVM_FE(dcngettext);
#endif
#if HAVE_BIND_TEXTDOMAIN_CODESET
  HHVM_FE(bind_textdomain_codeset);
#endif
  loadSystemlib();
}
Exemple #17
0
  virtual void moduleInit() {
    HHVM_FE(apache_note);
    HHVM_FE(apache_request_headers);
    HHVM_FE(apache_response_headers);
    HHVM_FE(apache_setenv);
    HHVM_FE(getallheaders);
    HHVM_FE(apache_get_config);

    loadSystemlib();
  }
Exemple #18
0
  void moduleInit() override {
#define SFCNS(v) Native::registerConstant<KindOfInt64> \
                         (s_STREAM_FILTER_##v.get(), k_STREAM_FILTER_##v)
    SFCNS(READ);
    SFCNS(WRITE);
    SFCNS(ALL);
#undef SFCNS

    HHVM_FE(stream_get_filters);
    HHVM_FE(stream_filter_register);
    HHVM_FE(stream_filter_append);
    HHVM_FE(stream_filter_prepend);
    HHVM_FE(stream_filter_remove);
    HHVM_FE(stream_bucket_make_writeable);
    HHVM_FE(stream_bucket_append);
    HHVM_FE(stream_bucket_prepend);
    loadSystemlib("stream-user-filters");
  }
Exemple #19
0
    void moduleInit() override {
#ifdef USE_EDITLINE
      HHVM_RC_STR(READLINE_LIB, "libedit");
#else
      HHVM_RC_STR(READLINE_LIB, "readline");
#endif
      HHVM_FE(readline);
      HHVM_FE(readline_add_history);
      HHVM_FE(readline_clear_history);
      HHVM_FE(readline_completion_function);
      HHVM_FE(readline_info);
      HHVM_FE(readline_read_history);
      HHVM_FE(readline_write_history);
      loadSystemlib();
    }
Exemple #20
0
    void moduleInit() override {
#ifdef USE_EDITLINE
      Native::registerConstant<KindOfStaticString>(
          makeStaticString("READLINE_LIB"), makeStaticString("libedit")
      );
#else
      Native::registerConstant<KindOfStaticString>(
          makeStaticString("READLINE_LIB"), makeStaticString("readline")
      );
#endif
      HHVM_FE(readline);
      HHVM_FE(readline_add_history);
      HHVM_FE(readline_clear_history);
      HHVM_FE(readline_completion_function);
      HHVM_FE(readline_info);
      HHVM_FE(readline_read_history);
      HHVM_FE(readline_write_history);
      loadSystemlib();
    }
Exemple #21
0
void StandardExtension::initOptions() {
  HHVM_FE(assert_options);
  HHVM_FE(assert);
  HHVM_FE(dl);
  HHVM_FE(extension_loaded);
  HHVM_FE(get_loaded_extensions);
  HHVM_FE(get_extension_funcs);
  HHVM_FE(get_cfg_var);
  HHVM_FE(get_current_user);
  HHVM_FE(get_defined_constants);
  HHVM_FE(get_include_path);
  HHVM_FE(restore_include_path);
  HHVM_FE(set_include_path);
  HHVM_FE(get_included_files);
  HHVM_FE(inclued_get_data);
  HHVM_FE(get_magic_quotes_gpc);
  HHVM_FE(get_magic_quotes_runtime);
  HHVM_FE(getenv);
  HHVM_FE(getlastmod);
  HHVM_FE(getmygid);
  HHVM_FE(getmyinode);
  HHVM_FE(getmypid);
  HHVM_FE(getmyuid);
  HHVM_FE(getopt);
  HHVM_FE(getrusage);
  HHVM_FE(clock_getres);
  HHVM_FE(clock_gettime);
  HHVM_FE(clock_settime);
  HHVM_FE(cpu_get_count);
  HHVM_FE(cpu_get_model);
  HHVM_FE(ini_get);
  HHVM_FE(ini_get_all);
  HHVM_FE(ini_restore);
  HHVM_FE(ini_set);
  HHVM_FE(memory_get_peak_usage);
  HHVM_FE(memory_get_usage);
  // This is HH-specific as well but code depends on the old name.
  HHVM_FE(memory_get_allocation);
  HHVM_FE(hphp_memory_get_interval_peak_usage);
  HHVM_FE(hphp_memory_start_interval);
  HHVM_FE(hphp_memory_stop_interval);
  HHVM_FE(php_ini_loaded_file);
  HHVM_FE(php_sapi_name);
  HHVM_FE(php_uname);
  HHVM_FE(phpinfo);
  HHVM_FE(phpversion);
  HHVM_FE(putenv);
  HHVM_FE(set_magic_quotes_runtime);
  HHVM_FE(set_time_limit);
  HHVM_FE(sys_get_temp_dir);
  HHVM_FE(zend_version);
  HHVM_FE(version_compare);
  HHVM_FE(gc_enabled);
  HHVM_FE(gc_enable);
  HHVM_FE(gc_disable);
  HHVM_FE(gc_collect_cycles);

#define INFO(v) Native::registerConstant<KindOfInt64> \
                  (makeStaticString("INFO_" #v), k_INFO_##v);
  INFO(GENERAL);
  INFO(CREDITS);
  INFO(CONFIGURATION);
  INFO(MODULES);
  INFO(ENVIRONMENT);
  INFO(VARIABLES);
  INFO(LICENSE);
  INFO(ALL);
#undef INFO

#define ASSERTCONST(v) Native::registerConstant<KindOfInt64> \
                  (makeStaticString("ASSERT_" #v), k_ASSERT_##v);
  ASSERTCONST(ACTIVE);
  ASSERTCONST(CALLBACK);
  ASSERTCONST(BAIL);
  ASSERTCONST(WARNING);
  ASSERTCONST(QUIET_EVAL);
#undef ASSERTCONST

  loadSystemlib("std_options");
}
Exemple #22
0
  void moduleInit() override {
    HHVM_FE(pcntl_alarm);
    HHVM_FE(pcntl_exec);
    HHVM_FE(pcntl_fork);
    HHVM_FE(pcntl_getpriority);
    HHVM_FE(pcntl_setpriority);
    HHVM_FE(pcntl_signal);
    HHVM_FE(pcntl_sigprocmask);
    HHVM_FE(pcntl_wait);
    HHVM_FE(pcntl_waitpid);
    HHVM_FE(pcntl_wexitstatus);
    HHVM_FE(pcntl_signal_dispatch);
    HHVM_FE(pcntl_wifexited);
    HHVM_FE(pcntl_wifsignaled);
    HHVM_FE(pcntl_wifstopped);
    HHVM_FE(pcntl_wstopsig);
    HHVM_FE(pcntl_wtermsig);
    HHVM_FE(shell_exec);
    HHVM_FE(exec);
    HHVM_FE(passthru);
    HHVM_FE(system);
    HHVM_FE(proc_open);
    HHVM_FE(proc_terminate);
    HHVM_FE(proc_close);
    HHVM_FE(proc_get_status);
    HHVM_FE(proc_nice);
    HHVM_FE(escapeshellarg);
    HHVM_FE(escapeshellcmd);

    loadSystemlib("process");
  }
void StandardExtension::initNetwork() {
    HHVM_FE(gethostname);
    HHVM_FE(gethostbyaddr);
    HHVM_FE(gethostbyname);
    HHVM_FE(gethostbynamel);
    HHVM_FE(getprotobyname);
    HHVM_FE(getprotobynumber);
    HHVM_FE(getservbyname);
    HHVM_FE(getservbyport);
    HHVM_FE(inet_ntop);
    HHVM_FE(inet_pton);
    HHVM_FE(ip2long);
    HHVM_FE(long2ip);
    HHVM_FE(checkdnsrr);
    HHVM_FE(dns_get_record);
    HHVM_FE(getmxrr);
    HHVM_FE(header);
    HHVM_FE(http_response_code);
    HHVM_FE(headers_list);
    HHVM_FE(headers_sent);
    HHVM_FE(header_register_callback);
    HHVM_FE(header_remove);
    HHVM_FE(get_http_request_size);
    HHVM_FE(setcookie);
    HHVM_FE(setrawcookie);
    HHVM_FE(openlog);
    HHVM_FE(closelog);
    HHVM_FE(syslog);

    // These are defined in ext_socket, but Zend has them in network
    HHVM_FE(fsockopen);
    HHVM_FE(pfsockopen);

    loadSystemlib("std_network");
}
Exemple #24
0
    void moduleInit() override {
      cnsInt(s_LIBXML_VERSION, LIBXML_VERSION);
      cnsStr(s_LIBXML_DOTTED_VERSION, LIBXML_DOTTED_VERSION);
      cnsStr(s_LIBXML_LOADED_VERSION, xmlParserVersion);

      // For use with loading xml
      cnsInt(s_LIBXML_NOENT, XML_PARSE_NOENT);
      cnsInt(s_LIBXML_DTDLOAD, XML_PARSE_DTDLOAD);
      cnsInt(s_LIBXML_DTDATTR, XML_PARSE_DTDATTR);
      cnsInt(s_LIBXML_DTDVALID, XML_PARSE_DTDVALID);
      cnsInt(s_LIBXML_NOERROR, XML_PARSE_NOERROR);
      cnsInt(s_LIBXML_NOWARNING, XML_PARSE_NOWARNING);
      cnsInt(s_LIBXML_NOBLANKS, XML_PARSE_NOBLANKS);
      cnsInt(s_LIBXML_XINCLUDE, XML_PARSE_XINCLUDE);
      cnsInt(s_LIBXML_NSCLEAN, XML_PARSE_NSCLEAN);
      cnsInt(s_LIBXML_NOCDATA, XML_PARSE_NOCDATA);
      cnsInt(s_LIBXML_NONET, XML_PARSE_NONET);
      cnsInt(s_LIBXML_PEDANTIC, XML_PARSE_PEDANTIC);
      cnsInt(s_LIBXML_COMPACT, XML_PARSE_COMPACT);
      cnsInt(s_LIBXML_NOXMLDECL, XML_SAVE_NO_DECL);
      cnsInt(s_LIBXML_PARSEHUGE, XML_PARSE_HUGE);
      cnsInt(s_LIBXML_NOEMPTYTAG, LIBXML_SAVE_NOEMPTYTAG);

      // Schema validation options
#if defined(LIBXML_SCHEMAS_ENABLED)
      cnsInt(s_LIBXML_SCHEMA_CREATE, XML_SCHEMA_VAL_VC_I_CREATE);
#endif

      // Additional constants for use with loading html
#if LIBXML_VERSION >= 20707
      cnsInt(s_LIBXML_HTML_NOIMPLIED, HTML_PARSE_NOIMPLIED);
#endif

#if LIBXML_VERSION >= 20708
      cnsInt(s_LIBXML_HTML_NODEFDTD, HTML_PARSE_NODEFDTD);
#endif

      // Error levels
      cnsInt(s_LIBXML_ERR_NONE, XML_ERR_NONE);
      cnsInt(s_LIBXML_ERR_WARNING, XML_ERR_WARNING);
      cnsInt(s_LIBXML_ERR_ERROR, XML_ERR_ERROR);
      cnsInt(s_LIBXML_ERR_FATAL, XML_ERR_FATAL);

      HHVM_FE(libxml_get_errors);
      HHVM_FE(libxml_get_last_error);
      HHVM_FE(libxml_clear_errors);
      HHVM_FE(libxml_use_internal_errors);
      HHVM_FE(libxml_suppress_errors);
      HHVM_FE(libxml_disable_entity_loader);
      HHVM_FE(libxml_set_streams_context);

      loadSystemlib();

      s_LibXMLError_class = Unit::lookupClass(s_LibXMLError.get());

      // Set up callbacks to support stream wrappers for reading and writing
      // xml files and loading external entities.
      xmlParserInputBufferCreateFilenameDefault(libxml_create_input_buffer);
      xmlOutputBufferCreateFilenameDefault(libxml_create_output_buffer);
      s_default_entity_loader = xmlGetExternalEntityLoader();
      xmlSetExternalEntityLoader(libxml_ext_entity_loader);
    }
Exemple #25
0
  void moduleInit() override {
    HHVM_ME(DateTime, __construct);
    HHVM_ME(DateTime, add);
    HHVM_ME(DateTime, diff);
    HHVM_ME(DateTime, format);
    HHVM_ME(DateTime, getOffset);
    HHVM_ME(DateTime, getTimestamp);
    HHVM_ME(DateTime, getTimezone);
    HHVM_ME(DateTime, modify);
    HHVM_ME(DateTime, setDate);
    HHVM_ME(DateTime, setISODate);
    HHVM_ME(DateTime, setTime);
    HHVM_ME(DateTime, setTimestamp);
    HHVM_ME(DateTime, setTimezone);
    HHVM_ME(DateTime, sub);
    HHVM_ME(DateTime, __sleep);
    HHVM_ME(DateTime, __wakeup);
    HHVM_ME(DateTime, __debuginfo);
    HHVM_STATIC_ME(DateTime, createFromFormat);
    HHVM_STATIC_ME(DateTime, getLastErrors);

    Native::registerNativeDataInfo<DateTimeData>(
      DateTimeData::s_className.get(), Native::NDIFlags::NO_SWEEP);

    REGISTER_TIME_ZONE_CONSTANT(AFRICA);
    REGISTER_TIME_ZONE_CONSTANT(AMERICA);
    REGISTER_TIME_ZONE_CONSTANT(ANTARCTICA);
    REGISTER_TIME_ZONE_CONSTANT(ARCTIC);
    REGISTER_TIME_ZONE_CONSTANT(ASIA);
    REGISTER_TIME_ZONE_CONSTANT(ATLANTIC);
    REGISTER_TIME_ZONE_CONSTANT(AUSTRALIA);
    REGISTER_TIME_ZONE_CONSTANT(EUROPE);
    REGISTER_TIME_ZONE_CONSTANT(INDIAN);
    REGISTER_TIME_ZONE_CONSTANT(PACIFIC);
    REGISTER_TIME_ZONE_CONSTANT(UTC);
    REGISTER_TIME_ZONE_CONSTANT(ALL);
    REGISTER_TIME_ZONE_CONSTANT(ALL_WITH_BC);
    REGISTER_TIME_ZONE_CONSTANT(PER_COUNTRY);

    HHVM_ME(DateTimeZone, __construct);
    HHVM_ME(DateTimeZone, getLocation);
    HHVM_ME(DateTimeZone, getName);
    HHVM_ME(DateTimeZone, getOffset);
    HHVM_ME(DateTimeZone, getTransitions);
    HHVM_STATIC_ME(DateTimeZone, listAbbreviations);
    HHVM_STATIC_ME(DateTimeZone, listIdentifiers);

    Native::registerNativeDataInfo<DateTimeZoneData>(
      DateTimeZoneData::s_className.get(), Native::NDIFlags::NO_SWEEP);

    HHVM_ME(DateInterval, __construct);
    HHVM_ME(DateInterval, __get);
    HHVM_ME(DateInterval, __set);
    HHVM_ME(DateInterval, format);
    HHVM_STATIC_ME(DateInterval, createFromDateString);

    Native::registerNativeDataInfo<DateIntervalData>(
      DateIntervalData::s_className.get(), Native::NDIFlags::NO_SWEEP);

    HHVM_FE(checkdate);
    HHVM_FE(date_parse_from_format);
    HHVM_FE(date_create);
    HHVM_FE(date_default_timezone_get);
    HHVM_FE(date_default_timezone_set);
    HHVM_FE(date_format);
    HHVM_FE(date_parse);
    HHVM_FE(date_sun_info);
    HHVM_NAMED_FE(date_sunrise, date_sunrise_sunset<false>);
    HHVM_NAMED_FE(date_sunset, date_sunrise_sunset<true>);
    HHVM_FE(date);
    HHVM_FE(getdate);
    HHVM_FE(gettimeofday);
    HHVM_FE(gmdate);
    HHVM_FE(gmmktime);
    HHVM_FE(gmstrftime);
    HHVM_FE(idate);
    HHVM_FE(localtime);
    HHVM_FE(microtime);
    HHVM_FE(mktime);
    HHVM_FE(strftime);
    HHVM_FE(strptime);
    HHVM_FE(strtotime);
    HHVM_FE(time);
    HHVM_FE(timezone_name_from_abbr);
    HHVM_FE(timezone_version_get);

#define SUNFUNCS_CNS(name, type) \
    Native::registerConstant<KindOfInt64> \
      (makeStaticString("SUNFUNCS_RET_" #name), \
      (int64_t)DateTime::SunInfoFormat::Return##type);
    SUNFUNCS_CNS(DOUBLE, Double);
    SUNFUNCS_CNS(STRING, String);
    SUNFUNCS_CNS(TIMESTAMP, TimeStamp);
#undef SUNFUNCS_CNS

    loadSystemlib("datetime");
  }
Exemple #26
0
void StandardExtension::initMisc() {
    HHVM_FALIAS(HH\\server_warmup_status, server_warmup_status);
    HHVM_FE(connection_aborted);
    HHVM_FE(connection_status);
    HHVM_FE(connection_timeout);
    HHVM_FE(constant);
    HHVM_FE(define);
    HHVM_FE(defined);
    HHVM_FE(ignore_user_abort);
    HHVM_FE(pack);
    HHVM_FE(sleep);
    HHVM_FE(usleep);
    HHVM_FE(time_nanosleep);
    HHVM_FE(time_sleep_until);
    HHVM_FE(uniqid);
    HHVM_FE(unpack);
    HHVM_FE(sys_getloadavg);
    HHVM_FE(token_get_all);
    HHVM_FE(token_name);
    HHVM_FE(hphp_to_string);
    HHVM_FALIAS(__SystemLib\\max2, SystemLib_max2);
    HHVM_FALIAS(__SystemLib\\min2, SystemLib_min2);
    HHVM_RC_INT(PHP_MAXPATHLEN, PATH_MAX);
    Native::registerConstant<KindOfBoolean>(makeStaticString("PHP_DEBUG"),
      #if DEBUG
        true
      #else
        false
      #endif
     );
    bindTokenConstants();
    HHVM_RC_INT(T_PAAMAYIM_NEKUDOTAYIM, get_user_token_id(T_DOUBLE_COLON));

    HHVM_RC_INT(UPLOAD_ERR_OK,         0);
    HHVM_RC_INT(UPLOAD_ERR_INI_SIZE,   1);
    HHVM_RC_INT(UPLOAD_ERR_FORM_SIZE,  2);
    HHVM_RC_INT(UPLOAD_ERR_PARTIAL,    3);
    HHVM_RC_INT(UPLOAD_ERR_NO_FILE,    4);
    HHVM_RC_INT(UPLOAD_ERR_NO_TMP_DIR, 6);
    HHVM_RC_INT(UPLOAD_ERR_CANT_WRITE, 7);
    HHVM_RC_INT(UPLOAD_ERR_EXTENSION,  8);

    HHVM_RC_INT(CREDITS_GROUP,    1 << 0);
    HHVM_RC_INT(CREDITS_GENERAL,  1 << 1);
    HHVM_RC_INT(CREDITS_SAPI,     1 << 2);
    HHVM_RC_INT(CREDITS_MODULES,  1 << 3);
    HHVM_RC_INT(CREDITS_DOCS,     1 << 4);
    HHVM_RC_INT(CREDITS_FULLPAGE, 1 << 5);
    HHVM_RC_INT(CREDITS_QA,       1 << 6);
    HHVM_RC_INT(CREDITS_ALL, 0xFFFFFFFF);

    HHVM_RC_INT(INI_SYSTEM, IniSetting::PHP_INI_SYSTEM);
    HHVM_RC_INT(INI_PERDIR, IniSetting::PHP_INI_PERDIR);
    HHVM_RC_INT(INI_USER,   IniSetting::PHP_INI_USER);
    HHVM_RC_INT(INI_ALL,    IniSetting::PHP_INI_SYSTEM |
                            IniSetting::PHP_INI_PERDIR |
                            IniSetting::PHP_INI_USER);

    HHVM_RC_STR(PHP_BINARY, current_executable_path());
    HHVM_RC_STR(PHP_BINDIR, current_executable_directory());
    HHVM_RC_STR(PHP_OS, HHVM_FN(php_uname)("s").toString().toCppString());
    HHVM_RC_STR(PHP_SAPI, RuntimeOption::ExecutionMode);

    HHVM_RC_INT(PHP_INT_SIZE, sizeof(int64_t));
    HHVM_RC_INT(PHP_INT_MIN, k_PHP_INT_MIN);
    HHVM_RC_INT(PHP_INT_MAX, k_PHP_INT_MAX);

    HHVM_RC_INT_SAME(PHP_MAJOR_VERSION);
    HHVM_RC_INT_SAME(PHP_MINOR_VERSION);
    HHVM_RC_INT_SAME(PHP_RELEASE_VERSION);
    HHVM_RC_STR_SAME(PHP_EXTRA_VERSION);
    HHVM_RC_STR_SAME(PHP_VERSION);
    HHVM_RC_INT_SAME(PHP_VERSION_ID);

    // FIXME: These values are hardcoded from their previous IDL values
    // Grab their correct values from the system as appropriate
    HHVM_RC_STR(PHP_EOL, "\n");
    HHVM_RC_STR(PHP_CONFIG_FILE_PATH, "");
    HHVM_RC_STR(PHP_CONFIG_FILE_SCAN_DIR, "");
    HHVM_RC_STR(PHP_DATADIR, "");
    HHVM_RC_STR(PHP_EXTENSION_DIR, "");
    HHVM_RC_STR(PHP_LIBDIR, "");
    HHVM_RC_STR(PHP_LOCALSTATEDIR, "");
    HHVM_RC_STR(PHP_PREFIX, "");
    HHVM_RC_STR(PHP_SHLIB_SUFFIX, "so");
    HHVM_RC_STR(PHP_SYSCONFDIR, "");
    HHVM_RC_STR(PEAR_EXTENSION_DIR, "");
    HHVM_RC_STR(PEAR_INSTALL_DIR, "");

    loadSystemlib("std_misc");
  }
void StandardExtension::initProcess() {
  HHVM_FE(shell_exec);
  HHVM_FE(exec);
  HHVM_FE(passthru);
  HHVM_FE(system);
  HHVM_FE(proc_open);
  HHVM_FE(proc_terminate);
  HHVM_FE(proc_close);
  HHVM_FE(proc_get_status);
  HHVM_FE(proc_nice);
  HHVM_FE(escapeshellarg);
  HHVM_FE(escapeshellcmd);

  loadSystemlib("std_process");
}
Exemple #28
0
void StandardExtension::initMisc() {
    HHVM_FALIAS(HH\\server_warmup_status, server_warmup_status);
    HHVM_FE(connection_aborted);
    HHVM_FE(connection_status);
    HHVM_FE(connection_timeout);
    HHVM_FE(constant);
    HHVM_FE(define);
    HHVM_FE(defined);
    HHVM_FE(ignore_user_abort);
    HHVM_FE(pack);
    HHVM_FE(sleep);
    HHVM_FE(usleep);
    HHVM_FE(time_nanosleep);
    HHVM_FE(time_sleep_until);
    HHVM_FE(uniqid);
    HHVM_FE(unpack);
    HHVM_FE(sys_getloadavg);
    HHVM_FE(token_get_all);
    HHVM_FE(token_name);
    HHVM_FE(hphp_to_string);
    Native::registerConstant<KindOfDouble>(makeStaticString("INF"), k_INF);
    Native::registerConstant<KindOfDouble>(makeStaticString("NAN"), k_NAN);
    Native::registerConstant<KindOfInt64>(
        makeStaticString("PHP_MAXPATHLEN"), MAXPATHLEN);
    Native::registerConstant<KindOfBoolean>(makeStaticString("PHP_DEBUG"),
      #if DEBUG
        true
      #else
        false
      #endif
     );
    loadSystemlib("std_misc");
  }
Exemple #29
0
  void moduleInit() override {
    HHVM_FE(spl_object_hash);
    HHVM_FE(hphp_object_pointer);
    HHVM_FE(hphp_get_this);
    HHVM_FE(class_implements);
    HHVM_FE(class_parents);
    HHVM_FE(class_uses);
    HHVM_FE(iterator_apply);
    HHVM_FE(iterator_count);
    HHVM_FE(iterator_to_array);
    HHVM_FE(spl_autoload_call);
    HHVM_FE(spl_autoload_extensions);
    HHVM_FE(spl_autoload_functions);
    HHVM_FE(spl_autoload_register);
    HHVM_FE(spl_autoload_unregister);

    loadSystemlib();
  }
Exemple #30
0
void StandardExtension::initErrorFunc() {
  HHVM_FE(debug_backtrace);
  HHVM_FE(hphp_debug_caller_info);
  HHVM_FE(debug_print_backtrace);
  HHVM_FE(error_get_last);
  HHVM_FE(error_log);
  HHVM_FE(error_reporting);
  HHVM_FE(restore_error_handler);
  HHVM_FE(restore_exception_handler);
  HHVM_FE(set_error_handler);
  HHVM_FE(set_exception_handler);
  HHVM_FE(hphp_set_error_page);
  HHVM_FE(hphp_throw_fatal_error);
  HHVM_FE(hphp_clear_unflushed);
  HHVM_FE(trigger_error);
  HHVM_FE(user_error);

#define INTCONST(v) Native::registerConstant<KindOfInt64> \
                  (makeStaticString(#v), k_##v);
  INTCONST(DEBUG_BACKTRACE_PROVIDE_OBJECT);
  INTCONST(DEBUG_BACKTRACE_IGNORE_ARGS);
  INTCONST(E_ERROR);
  INTCONST(E_WARNING);
  INTCONST(E_PARSE);
  INTCONST(E_NOTICE);
  INTCONST(E_CORE_ERROR);
  INTCONST(E_CORE_WARNING);
  INTCONST(E_COMPILE_ERROR);
  INTCONST(E_COMPILE_WARNING);
  INTCONST(E_USER_ERROR);
  INTCONST(E_USER_WARNING);
  INTCONST(E_USER_NOTICE);
  INTCONST(E_STRICT);
  INTCONST(E_RECOVERABLE_ERROR);
  INTCONST(E_DEPRECATED);
  INTCONST(E_USER_DEPRECATED);
  INTCONST(E_ALL);
#undef INTCONST

  loadSystemlib("std_errorfunc");
}