<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Thanks, Dr. Greg.  Is there in Intel® Software Guard Extensions (Intel® SGX)</title>
    <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182685#M3590</link>
    <description>&lt;P&gt;Thanks, Dr. Greg.&amp;nbsp; Is there currently a roadmap or general direction on what C/C++11-17 features are &lt;STRONG&gt;not&lt;/STRONG&gt; outside of future SGX support, in order to determine what is a fundamental restriction, like Input/Output and something that could be supported in the future or allowed via third-party products?&lt;/P&gt;</description>
    <pubDate>Wed, 09 Jan 2019 16:12:43 GMT</pubDate>
    <dc:creator>Harris__David</dc:creator>
    <dc:date>2019-01-09T16:12:43Z</dc:date>
    <item>
      <title>C++ regex functions support</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182682#M3587</link>
      <description>&lt;P&gt;I want to use the C++ regex library in the enclave. &amp;nbsp; To test using regex, I put basic regex functions 'regex' and 'regex_match' in the code below and get the compiler error "Function &amp;lt;.....&amp;gt; could not be resolved", though "#include regex" produces no errors.&lt;/P&gt;&lt;P&gt;#include &amp;lt;stdarg.h&amp;gt;&lt;BR /&gt;#include &amp;lt;stdio.h&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* vsnprintf */&lt;BR /&gt;#include &amp;lt;regex&amp;gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;#include "enc.h"&lt;BR /&gt;#include "enc_t.h"&amp;nbsp; /* print_string */&lt;/P&gt;&lt;P&gt;using namespace std;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* &amp;nbsp;&lt;BR /&gt;&amp;nbsp;* printf: &amp;nbsp;&lt;BR /&gt;&amp;nbsp;*&amp;nbsp;&amp;nbsp; Invokes OCALL to display the enclave buffer to the terminal.&lt;BR /&gt;&amp;nbsp;*/&lt;BR /&gt;void printf(const char *fmt, ...)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char buf[BUFSIZ] = {'\0'};&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; va_list ap;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; va_start(ap, fmt);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; vsnprintf(buf, BUFSIZ, fmt, ap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; va_end(ap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ocall_enc_sample(buf);&lt;BR /&gt;}&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;int ecall_enc_sample()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; printf("IN ENC\n");&lt;BR /&gt;&amp;nbsp; regex_match ("subject", regex("(sub)(.*)"));&lt;BR /&gt;&amp;nbsp; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;********************************************************************&lt;/P&gt;&lt;P&gt;Makefile generates the following errors:&lt;/P&gt;&lt;P&gt;make SGX_DEBUG=1 SGX_MODE=SIM -f sgx/Makefile all &amp;nbsp;&lt;BR /&gt;make -C ./sgx/enclave_enc&amp;nbsp; -f sgx_u.mk all;&lt;BR /&gt;make[1]: Entering directory `/home/dave/eclipse-workspace/reg/sgx/enclave_enc'&lt;BR /&gt;GEN&amp;nbsp; =&amp;gt;&amp;nbsp; untrusted/enc_u.c&lt;BR /&gt;CC&amp;nbsp;&amp;nbsp; &amp;lt;=&amp;nbsp; untrusted/enc_u.c&lt;BR /&gt;CXX&amp;nbsp; &amp;lt;=&amp;nbsp; untrusted/sample.cpp&lt;BR /&gt;LINK =&amp;gt;&amp;nbsp; sample&lt;BR /&gt;make[1]: Leaving directory `/home/dave/eclipse-workspace/reg/sgx/enclave_enc'&lt;BR /&gt;make -C ./sgx/enclave_enc&amp;nbsp;&amp;nbsp;&amp;nbsp; -f sgx_t.mk all;&lt;BR /&gt;make[1]: Entering directory `/home/dave/eclipse-workspace/reg/sgx/enclave_enc'&lt;BR /&gt;GEN&amp;nbsp; =&amp;gt;&amp;nbsp; trusted/enc_t.c&lt;BR /&gt;CC&amp;nbsp;&amp;nbsp; &amp;lt;=&amp;nbsp; trusted/enc_t.c&lt;BR /&gt;trusted/enc.cpp: In function ‘int ecall_enc_sample()’:&lt;BR /&gt;trusted/enc.cpp:27:44: error: ‘regex’ was not declared in this scope&lt;BR /&gt;&amp;nbsp;&amp;nbsp; regex_match ("subject", regex("(sub)(.*)"));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^&lt;BR /&gt;trusted/enc.cpp:27:45: error: ‘regex_match’ was not declared in this scope&lt;BR /&gt;&amp;nbsp;&amp;nbsp; regex_match ("subject", regex("(sub)(.*)"));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^&lt;BR /&gt;make[1]: *** [trusted/enc.o] Error 1&lt;BR /&gt;make[1]: Leaving directory `/home/dave/eclipse-workspace/reg/sgx/enclave_enc'&lt;BR /&gt;make: *** [all] Error 2&lt;/P&gt;&lt;P&gt;********************************************************************&lt;/P&gt;&lt;P&gt;Makefile structure:&lt;/P&gt;&lt;P&gt;######## Intel(R) SGX SDK Settings ########&lt;BR /&gt;SGX_SDK ?= /opt/intel/sgxsdk&lt;BR /&gt;SGX_MODE ?= SIM&lt;BR /&gt;SGX_ARCH ?= x64&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(shell getconf LONG_BIT), 32)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_ARCH := x86&lt;BR /&gt;else ifeq ($(findstring -m32, $(CXXFLAGS)), -m32)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_ARCH := x86&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(SGX_ARCH), x86)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_COMMON_CFLAGS := -m32&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_LIBRARY_PATH := $(SGX_SDK)/lib&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_ENCLAVE_SIGNER := $(SGX_SDK)/bin/x86/sgx_sign&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_EDGER8R := $(SGX_SDK)/bin/x86/sgx_edger8r&lt;BR /&gt;else&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_COMMON_CFLAGS := -m64&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_LIBRARY_PATH := $(SGX_SDK)/lib64&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_ENCLAVE_SIGNER := $(SGX_SDK)/bin/x64/sgx_sign&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SGX_EDGER8R := $(SGX_SDK)/bin/x64/sgx_edger8r&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(SGX_DEBUG), 1)&lt;BR /&gt;ifeq ($(SGX_PRERELEASE), 1)&lt;BR /&gt;$(error Cannot set SGX_DEBUG and SGX_PRERELEASE at the same time!!)&lt;BR /&gt;endif&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(SGX_DEBUG), 1)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SGX_COMMON_CFLAGS += -O0 -g&lt;BR /&gt;else&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SGX_COMMON_CFLAGS += -O2&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifneq ($(SGX_MODE), HW)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Trts_Library_Name := sgx_trts_sim&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Service_Library_Name := sgx_tservice_sim&lt;BR /&gt;else&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Trts_Library_Name := sgx_trts&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Service_Library_Name := sgx_tservice&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Crypto_Library_Name := sgx_tcrypto&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Enc_Cpp_Files := trusted/enc.cpp &amp;nbsp;&lt;BR /&gt;Enc_C_Files := &amp;nbsp;&lt;BR /&gt;Enc_Include_Paths := -IInclude -Itrusted -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/libcxx&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Flags_Just_For_C := -Wno-implicit-function-declaration -std=c11&lt;BR /&gt;Common_C_Cpp_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -fstack-protector $(Enc_Include_Paths) -fno-builtin-printf -I.&lt;BR /&gt;Enc_C_Flags := $(Flags_Just_For_C) $(Common_C_Cpp_Flags)&lt;BR /&gt;Enc_Cpp_Flags :=&amp;nbsp; $(Common_C_Cpp_Flags) -std=c++11 -nostdinc++ -fno-builtin-printf -I.&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Enc_Cpp_Flags := $(Enc_Cpp_Flags)&amp;nbsp; -fno-builtin-printf&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Enc_Link_Flags := $(SGX_COMMON_CFLAGS) -Wl,--no-undefined -nostdlib -nodefaultlibs -nostartfiles -L$(SGX_LIBRARY_PATH) \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,--whole-archive -l$(Trts_Library_Name) -Wl,--no-whole-archive \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,--start-group -lsgx_tstdc -lsgx_tcxx -l$(Crypto_Library_Name) -l$(Service_Library_Name) -Wl,--end-group \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,-Bstatic -Wl,-Bsymbolic -Wl,--no-undefined \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,-pie,-eenclave_entry -Wl,--export-dynamic&amp;nbsp; \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,--defsym,__ImageBase=0 \&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;-Wl,--version-script=trusted/enc.lds&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Enc_Cpp_Objects := $(Enc_Cpp_Files:.cpp=.o)&lt;BR /&gt;Enc_C_Objects := $(Enc_C_Files:.c=.o)&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(SGX_MODE), HW)&lt;BR /&gt;ifneq ($(SGX_DEBUG), 1)&lt;BR /&gt;ifneq ($(SGX_PRERELEASE), 1)&lt;BR /&gt;Build_Mode = HW_RELEASE&lt;BR /&gt;endif&lt;BR /&gt;endif&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;.PHONY: all run&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;ifeq ($(Build_Mode), HW_RELEASE)&lt;BR /&gt;all: enc.so&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "Build enclave enc.so&amp;nbsp; [$(Build_Mode)|$(SGX_ARCH)] success!"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "*********************************************************************************************************************************************************"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "PLEASE NOTE: In this mode, please sign the enc.so first using Two Step Sign mechanism before you run the app to launch and access the enclave."&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "*********************************************************************************************************************************************************"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;else&lt;BR /&gt;all: enc.signed.so&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;run: all&lt;BR /&gt;ifneq ($(Build_Mode), HW_RELEASE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(CURDIR)/app&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "RUN&amp;nbsp; =&amp;gt;&amp;nbsp; app [$(SGX_MODE)|$(SGX_ARCH), OK]"&lt;BR /&gt;endif&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;######## enc Objects ########&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;trusted/enc_t.c: $(SGX_EDGER8R) ./trusted/enc.edl&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@cd ./trusted &amp;amp;&amp;amp; $(SGX_EDGER8R) --trusted ../trusted/enc.edl --search-path ../trusted --search-path $(SGX_SDK)/include&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "GEN&amp;nbsp; =&amp;gt;&amp;nbsp; $@"&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;trusted/enc_t.o: ./trusted/enc_t.c&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(CC) $(Enc_C_Flags) -c $&amp;lt; -o $@&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "CC&amp;nbsp;&amp;nbsp; &amp;lt;=&amp;nbsp; $&amp;lt;"&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;trusted/%.o: trusted/%.cpp&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(CXX) $(Enc_Cpp_Flags) -c $&amp;lt; -o $@&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "CXX&amp;nbsp; &amp;lt;=&amp;nbsp; $&amp;lt;"&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;trusted/%.o: trusted/%.c&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(CC) $(Enc_C_Flags) -c $&amp;lt; -o $@&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "CC&amp;nbsp; &amp;lt;=&amp;nbsp; $&amp;lt;"&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;enc.so: trusted/enc_t.o $(Enc_Cpp_Objects) $(Enc_C_Objects)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(CXX) $^ -o $@ $(Enc_Link_Flags)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "LINK =&amp;gt;&amp;nbsp; $@"&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;enc.signed.so: enc.so&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@$(SGX_ENCLAVE_SIGNER) sign -key trusted/enc_private.pem -enclave enc.so -out $@ -config trusted/enc.config.xml&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@echo "SIGN =&amp;gt;&amp;nbsp; $@"&lt;BR /&gt;clean:&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;@rm -f enc.* trusted/enc_t.* $(Enc_Cpp_Objects) $(Enc_C_Objects)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 27 Dec 2018 21:05:08 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182682#M3587</guid>
      <dc:creator>Harris__David</dc:creator>
      <dc:date>2018-12-27T21:05:08Z</dc:date>
    </item>
    <item>
      <title>Hi David.</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182683#M3588</link>
      <description>&lt;P&gt;Hi David.&lt;/P&gt;&lt;P&gt;The regex library is currently unsupported within SGX enclaves.&amp;nbsp; The header was kept in the SDK to simplify future updates.&amp;nbsp; If you look at the regex header file, at line 757 you'll notice the following:&lt;/P&gt;
&lt;PRE class="brush:cpp; class-name:dark;"&gt;#ifndef _LIBCPP_SGX_CONFIG // unsupported by SGX&lt;/PRE&gt;

&lt;P&gt;This effectively disables the regex library.&lt;/P&gt;
&lt;P&gt;For a complete list of unsupported functions, you can look in the SGX developer reference or this web site:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://software.intel.com/en-us/sgx-sdk-dev-reference-unsupported-c-standard-functions-1" target="_blank"&gt;https://software.intel.com/en-us/sgx-sdk-dev-reference-unsupported-c-standard-functions-1&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Regards.&lt;/P&gt;
&lt;P&gt;Scott&lt;/P&gt;</description>
      <pubDate>Fri, 04 Jan 2019 12:38:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182683#M3588</guid>
      <dc:creator>Scott_R_Intel</dc:creator>
      <dc:date>2019-01-04T12:38:35Z</dc:date>
    </item>
    <item>
      <title>Hi David, I hope this note</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182684#M3589</link>
      <description>&lt;P&gt;Hi David, I hope this note finds your week going well.&lt;/P&gt;&lt;P&gt;We needed regex support in our enclave based modeling engine so we ported the regular expression code from the MUSL C library.&amp;nbsp; It took a little hammering and filing to get it into an enclave but the process was reasonably straight forward and we have had no demonstrated issues with the code to date.&lt;/P&gt;&lt;P&gt;It is obviously the POSIX C API rather then a C++ API but if you need regular expression processing it is a possible path forward.&lt;/P&gt;&lt;P&gt;Good luck with your project.&lt;/P&gt;&lt;P&gt;Dr. Greg&lt;/P&gt;</description>
      <pubDate>Wed, 09 Jan 2019 01:38:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182684#M3589</guid>
      <dc:creator>Dr__Greg</dc:creator>
      <dc:date>2019-01-09T01:38:00Z</dc:date>
    </item>
    <item>
      <title>Thanks, Dr. Greg.  Is there</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182685#M3590</link>
      <description>&lt;P&gt;Thanks, Dr. Greg.&amp;nbsp; Is there currently a roadmap or general direction on what C/C++11-17 features are &lt;STRONG&gt;not&lt;/STRONG&gt; outside of future SGX support, in order to determine what is a fundamental restriction, like Input/Output and something that could be supported in the future or allowed via third-party products?&lt;/P&gt;</description>
      <pubDate>Wed, 09 Jan 2019 16:12:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/C-regex-functions-support/m-p/1182685#M3590</guid>
      <dc:creator>Harris__David</dc:creator>
      <dc:date>2019-01-09T16:12:43Z</dc:date>
    </item>
  </channel>
</rss>

