support statically linked runtime

I think as you know if you are linking against this library and you are not using dynamically linked runtime you might see weird behaviors or even crash (have no idea what's going on since it's not...

Id #18 | Release: None | Updated: Oct 5, 2015 at 1:48 PM by maddiaks | Created: Jun 20, 2013 at 7:59 PM by c2c

Client Side Certificates

Please vote if this is an important scenario for you. If the lack of this feature is is blocking your adoption of the C++ REST SDK, please comment below. Note: We cannot guarantee that this fea...

Id #41 | Release: None | Updated: Aug 17, 2015 at 11:02 AM by Manorama | Created: Jul 16, 2013 at 5:29 PM by stevetgates

Support for Clang compiler on Linux

Please vote if this is an important scenario for you. If the lack of this feature is is blocking your adoption of the C++ REST SDK, please comment below. Note: We cannot guarantee that this featur...

Id #24 | Release: None | Updated: Jul 12, 2015 at 9:31 AM by eetuv | Created: Jul 11, 2013 at 7:09 PM by sanamithani

Windows - support for utf-8, single byte strings

On Windows string_t is a 2 byte character, assumed UTF-16 string in the C++ Rest SDK. For some data critical areas we could make API overloads that work with std::string or return std::string. Th...

Id #239 | Release: None | Updated: Jan 14 at 7:30 AM by zoenie | Created: Aug 18, 2014 at 10:10 PM by stevetgates

Linux/non-Windows http_client proxy support

Please vote if this is an important scenario for you. If the lack of this feature is is blocking your adoption of the C++ REST SDK, please comment below. Note: We cannot guarantee that this feat...

Id #88 | Release: None | Updated: Thu at 5:32 PM by prempatil | Created: Feb 21, 2014 at 9:19 PM by stevetgates

Linux/non-Windows http_client authentication support

Support for some http authentication schemes in http_client on Linux and other non-Microsoft platforms

Id #89 | Release: None | Updated: Nov 11, 2015 at 7:09 PM by georgemp | Created: Feb 21, 2014 at 9:21 PM by stevetgates

Add Windows Integrated Security

Please add an option to use the credentials of the currently logged on user to authenticate against servers.

Id #38 | Release: None | Updated: May 19, 2015 at 8:41 PM by pimiy | Created: Jul 12, 2013 at 7:17 AM by SvenC

HTTPS support for non-Windows http_listener

Please vote if this scenario is import for you: We currently have support for HTTPS with the http_listener on Windows desktop, however we do not have it for Linux, OSX, etc.

Id #274 | Release: None | Updated: Sep 21, 2015 at 10:13 AM by gigaplex | Created: Sep 16, 2014 at 12:36 AM by roschuma

Additional platform support: Xbox

Please vote if this is an important scenario for you. If the lack of this feature is is blocking your adoption of the C++ REST SDK, please comment below. Note: We cannot guarantee that this featu...

Id #34 | Release: None | Updated: Sep 22, 2014 at 11:39 PM by dvgopal | Created: Jul 11, 2013 at 7:25 PM by sanamithani

http_client - support automatic gzip compression/decompression

1) I get this http response header() (L"Cache-Control", L"no-cache") (L"Content-Encoding", L"gzip") (L"Content-Length", L"792") (L"Content-Type", L"application/json;charset=utf-8") (L"Date"...

Id #234 | Release: None | Updated: Sep 6, 2015 at 10:28 AM by vsl | Created: Aug 16, 2014 at 1:41 PM by petke

http_listener - [Linux] server keep connection alive

We don't have keep-connection alive implemented on our server on Linux (even though it looks like it is implemented, there is a variable m_close in http_linux_server.cpp but it simply doesn't work)...

Id #141 | Release: None | Updated: Jun 5, 2015 at 10:28 PM by EricMCornelius | Created: May 16, 2014 at 8:44 PM by stevetgates

http_listener - Add support to add cookies

.NET has SetCookie, AppendCookie: eg: add a cookie to the response. For instance, add a cookie with current visited time. It will be good to have this feature in Casablanca. Currently, users can u...

Id #133 | Release: None | Updated: Nov 23, 2015 at 7:19 AM by cool_niu | Created: May 16, 2014 at 8:18 PM by stevetgates

http_listener - Allow for session management

There currently is no way to determine if a request came from a new connection or an existing persistent connection. Please allow a way to know when a session is open, and a way for the user to kno...

Id #111 | Release: None | Updated: Nov 23, 2015 at 4:53 AM by cool_niu | Created: May 6, 2014 at 7:50 PM by Nagendra17

http_listener - Implement support for 100-Continue Expect header

Casablanca: How can we support 100-Continue Expect header using Casablanca. See Section 8.2.3 of HTTP specification: The purpose of the 100 (Continue) status (see section 10.1.1) is to allow a cl...

Id #131 | Release: None | Updated: Jun 5, 2015 at 10:25 PM by EricMCornelius | Created: May 16, 2014 at 2:29 AM by stevetgates

json - include decimal point and trailing zero when serializing double round doubles (Azure storage)

I noticed that when serializing a JSON message that contains a double value which is a round number (e.g. 123.0), the value is printed without a decimal point. This poses a problem for our server b...

Id #119 | Release: None | Updated: Jul 30, 2015 at 9:46 AM by jonghyun | Created: May 16, 2014 at 2:04 AM by stevetgates

http_client: How to get the redirected URL?

I'm fetching a document that can contain relative URLs. Since the original request may be redirected, I need to know the URL actually used to fetch the resource to turn those relative URLs into ab...

Id #100 | Release: None | Updated: Sep 4, 2014 at 11:36 PM by DanJL | Created: Apr 10, 2014 at 1:33 AM by kavyako

Support CentOS / Red Hat

We are nearing the completion of our Windows project and now must have C++ REST SDK running on Red Hat. We are a Red Hat shop. We would like to see the C++ REST SDK officially supported on CentOS/ ...

Id #92 | Release: None | Updated: Jan 6, 2015 at 6:57 PM by stevetgates | Created: Mar 7, 2014 at 3:13 AM by BSalita

Android with VS 2015 RTM - default Clang version is no longer 3.4 NuGet packages end up turned off

Reported from the following discussion: https://casablanca.codeplex.com/discussions/641769 Basically the problem is the Android NuGet packages only will add the files if the Clang version is 3....

Id #400 | Release: None | Updated: Oct 9, 2015 at 6:03 PM by kavyako | Created: Jul 24, 2015 at 6:46 PM by stevetgates

http_listener (boost impl) - race closing with requests errors in some cases can cause AVs

I don't think the code for handling closing is entirely correct in non straightforward cases. If requests are in progress in error paths segmentation faults occur. I don't think this is particular ...

Id #328 | Release: None | Updated: Dec 19, 2014 at 8:57 AM by lolisia | Created: Dec 16, 2014 at 1:54 AM by stevetgates

replace all platform dependent synchronization primitives with stl version

Starting from Dev14, ppltasks will no long provide definitions for (scoped)_recursive_lock_t (scoped)_read_writer_lock_t critical_section_t etc.. We need to make Casablanca only depends on ...

Id #198 | Release: None | Updated: Jul 3, 2015 at 9:33 AM by Rob_McKay | Created: Jun 17, 2014 at 1:48 AM by gbb21

Make json::value(const char*) safe under Windows

The following code: json::value params; params[U("version")] = json::value("1.0"); results in the following JSON: {"version":true} under Windows, as "1.0" literal is implicitly converted to bool...

Id #185 | Release: None | Updated: Jul 15, 2015 at 8:22 AM by Jormungand999 | Created: May 31, 2014 at 10:35 PM by _VZ_

http_client - support timeout options at the individual request level

One of our internal customers requested interest in being able to set timeouts at the individual request level. Right now we only support options for configuration at the http_client level affectin...

Id #142 | Release: None | Updated: Oct 22, 2014 at 10:47 PM by vkaminsky | Created: May 16, 2014 at 8:46 PM by stevetgates

http_client - validate servers with custom certificates

On non-windows platforms, openssl expects all valid certificates to reside in a directory like "/usr/local/etc/openssl". This can be problematic if the user program doesn't have root access, or the...

Id #116 | Release: None | Updated: Oct 22, 2014 at 10:49 PM by vkaminsky | Created: May 14, 2014 at 7:27 PM by roschuma

http listener not listening on "invalid" uri's

Hey Guys, I'm using the listener on localhost and nearly everything works smoothly, but during testing I now ran into a problem. Whenever I'm trying to access the listener through in invalid uri ...

Id #427 | Release: None | Updated: Oct 15, 2015 at 8:52 AM by FredericSt | Created: Oct 9, 2015 at 8:31 PM by kavyako

[Documentation] Need samples for listening for HTTPS on Windows

We have no sample code for using http_listener to do HTTPS on windows.

Id #419 | Release: None | Updated: Sep 28, 2015 at 8:02 AM by gigaplex | Created: Sep 21, 2015 at 9:53 PM by roschuma

Update to C++14 standards

With C++14 standards, we can use many cool C++ syntax including the generic lambda, and it is not a big effort to upgrade, only the compiler setting and regression testing. Current code should comp...

Id #415 | Release: None | Updated: Oct 1, 2015 at 9:22 PM by kavyako | Created: Sep 6, 2015 at 7:07 AM by evanc

No cpprestsdk.v140.winxp.msvcstl.dyn.rt-dyn NuGet package available

There is no cpprestsdk.v140.winxp.msvcstl.dyn.rt-dyn NuGet package available for version 2.6.0. Will future versions support "v140_xp" platform toolset and if they will, when will they be release...

Id #409 | Release: None | Updated: Dec 4, 2015 at 1:22 AM by aivanoff | Created: Aug 11, 2015 at 2:56 PM by Barfy

Build error on OS X & latest version of clang

Hey, trying to compile with the latest version of Clang blows up with tons of warnings-turned-to-errors like this: /.../casablanca/Release/include/cpprest/details/SafeInt3.hpp:3144:9: error: un...

Id #404 | Release: None | Updated: Oct 1, 2015 at 9:21 PM by kavyako | Created: Jul 30, 2015 at 2:38 PM by eagleflo

Support WRL (not /ZW) for Windows Store/Phone

Relevant discussion: https://casablanca.codeplex.com/discussions/579930 I believe it should just involve making sure all our WINAPI_FAMILY/__cplusplus_winrt checks are correct.

Id #357 | Release: None | Updated: Apr 9, 2015 at 10:01 AM by Altk | Created: Apr 1, 2015 at 3:06 AM by stevetgates

json-schema support

Extend Casablanca's JSON support to cover json-schema: For JSON data validation scenarios going beyond say using regex against string fields. The standard is still in draft, but I was wondering i...

Id #356 | Release: None | Updated: Apr 1, 2015 at 3:25 AM by stevetgates | Created: Mar 26, 2015 at 1:40 AM by Sserpenthraxus

websocket_client_config ssl verify mode

Currently it's not possible to disable certificate validation for websockets, the only way to do is to change the cpprestsdk source code (which is not the best idea). It would be great to provide...

Id #337 | Release: None | Updated: Apr 13, 2015 at 4:23 PM by brinkrob | Created: Jan 8, 2015 at 12:19 PM by mbischof

Increase reported detail from WinHTTP failures

Currently, we only use and report based on the dwResult field in the WINHTTP_ASYNC_RESULT structure. This makes it difficult to know specifically what failed when a failure occurs. It would be good...

Id #286 | Release: None | Updated: Oct 24, 2014 at 11:34 PM by stevetgates | Created: Sep 26, 2014 at 9:49 PM by roschuma

websocket_client - no way to get access to initial HTTP response

We have options for setting things like HTTP headers in the initial HTTP request that gets sent to upgrade to the websocket protocol. We don't have any APIs exposing the response options, other lib...

Id #260 | Release: None | Updated: Sep 29, 2015 at 10:11 PM by kavyako | Created: Sep 1, 2014 at 10:53 PM by stevetgates

http_client - iOS/OS X/Android certificate verification improve error reporting

When using the iOS and JNI APIs for verification failure is just true/false right now. The OpenSSL callback takes true/false. Ideally we should provide more error information to the user. Perhaps a...

Id #258 | Release: None | Updated: Oct 13, 2014 at 9:33 AM by nikolaynnov | Created: Aug 28, 2014 at 7:18 AM by stevetgates

websocket_client - authorization credentials support on non-WinRT

This is only implemented in our WinRT websocket_client right now.

Id #254 | Release: None | Updated: Aug 28, 2014 at 4:50 AM by xubin | Created: Aug 28, 2014 at 12:27 AM by stevetgates

oauth - needs Visual Studio visualizer

Applies to both 1.0 and 2.0.

Id #241 | Release: None | Updated: Oct 13, 2014 at 9:35 AM by nikolaynnov | Created: Aug 20, 2014 at 12:04 AM by stevetgates

Add logging of HTTP requests/responses

It would be nice to have a way to provide a (user-configurable) logger which would be called for all HTTP requests done by the library and for all responses to them. This would be mostly useful to ...

Id #211 | Release: None | Updated: Aug 28, 2014 at 10:19 AM by halex2005 | Created: Jul 5, 2014 at 4:17 PM by _VZ_

Add additional error parameter to datetime::from_string

1601-01-01T00:00:00Z is a valid date, but it not distinguishable from an error. We should add an output parameter error to from_string, something like this: datetime __cdecl datetime::from_string(...

Id #207 | Release: None | Updated: Oct 27, 2014 at 5:39 PM by stevetgates | Created: Jun 27, 2014 at 2:09 AM by arturl

Add cancellation support to websocket APIs (especially receive task)

Currently, websocket APIs do not take cancellation token. Initiating a receive returns a task that completes when a message is received. If user wishes to cancel this operation, it is not possibl...

Id #177 | Release: None | Updated: Aug 18, 2014 at 6:26 PM by raffaeler | Created: May 22, 2014 at 9:39 PM by kavyako

Compiling cpprest/http_client.h with g++ -Wall results in tons of warnings

Compiling any code using the SDK with "g++ -Wall" results in more than a hundred warnings. The warnings are harmless: 70 of them are -Wunknown-pragmas and 33 more are -Wreorder, but it would still ...

Id #173 | Release: None | Updated: Sep 19, 2014 at 12:05 AM by stevetgates | Created: May 20, 2014 at 2:52 PM by _VZ_

streams - interop APIs to convert from WinRT stream to Casablanca stream

The stream interop APIs only provide a way to convert from Casablanca stream (concurrency::streams::streambuffer) to WinRT stream and not the other way round. We need to provide the two way convers...

Id #164 | Release: None | Updated: Jul 2, 2014 at 3:56 AM by utsav_popli | Created: May 16, 2014 at 9:59 PM by stevetgates

streams - size() method returns size64_t but rest of APIs take size_t

A customer discovered that our size() API on stream buffers, however the rest of the APIs for reading/writing etc... use size_t. I'm not exactly sure how we ended up in this situation but, we sh...

Id #145 | Release: None | Updated: Oct 24, 2014 at 11:27 PM by stevetgates | Created: May 16, 2014 at 8:51 PM by stevetgates

http_listener - improve perf when listener is responding to requests with payloads (smaller payloads : <=100KB)

Testcase: client sends GET request to the listener, listener responds to the request with data. Measure the round trip time, time taken to send the request, and receiving success status code and ...

Id #138 | Release: None | Updated: Sep 3, 2014 at 5:35 PM by stevetgates | Created: May 16, 2014 at 8:38 PM by stevetgates

http_listener - improve perf when listener is receiving requests with data payloads

Testcase: client sends PUT request to the listener, each request has a data payload. Measure the round trip time, time taken to send the request, read the data at the listener end and receiving s...

Id #137 | Release: None | Updated: Sep 3, 2014 at 5:35 PM by stevetgates | Created: May 16, 2014 at 8:37 PM by stevetgates

utility::datetime::from_string doesn't work when some values are dropped from date/time representation

ISO 8601 specifies several formats. http://en.wikipedia.org/wiki/ISO_8601 datetime::from_string should work with all of them. from_string returns 0 if any of the values are dropped. for instance...

Id #129 | Release: None | Updated: Oct 13, 2014 at 9:54 AM by nikolaynnov | Created: May 16, 2014 at 2:26 AM by stevetgates

http_listener - Allow users to configure maximum number of simultaneous sessions

To allow users to better control the use of CPU resources, and memory resources, please give them a knob where they can set the maximum number of simultaneous sessions and threads. See related di...

Id #110 | Release: None | Updated: Jun 26, 2014 at 3:37 PM by sriramkp | Created: May 5, 2014 at 6:00 PM by Nagendra17

Use Compiler Constants to Check for Common Errors

Use compiler manifest constants in #include files to check for common development errors for the various supported compilers. Here's some gcc tests: ifdef GNUC ifndef GNUG error "Error: Not a C++ c...

Id #93 | Release: None | Updated: Aug 26, 2014 at 12:12 AM by stevetgates | Created: Mar 10, 2014 at 1:42 AM by BSalita

MQTT Client + MQTT Listener

Addition of an Asynchronous MQTT Client + Listener to allow for M2M messaging via MQTT.

Id #55 | Release: None | Updated: Dec 21, 2013 at 4:48 PM by rajeshkannanp | Created: Sep 26, 2013 at 1:06 AM by hpidcock

Make error on Ubuntu 15.10 (undefined reference to `boost::filesystem::path_traits::dispatch(boost::filesystem::directory_entry const&, std::string&)')

Hi I am trying to build casablanca on ubutu 15.10 64 bit machine. I can only install libboost1.58-all-dev instead of version 1.54. following is error: [ 19%] Built target cpprest [ 32%] Buil...

Id #431 | Release: None | Updated: Jan 30 at 8:32 PM by rohit06nitbpl | Created: Jan 30 at 8:32 PM by rohit06nitbpl

TLS1.2 through WinHttpSetOption on winhttp_client

I need to activate TLS1.2 in Casablanca on Windows. The only way I have found to do this is actually recompile the cpprest120_2_7.dll with the following lines in the open() function of winhttp_clie...

Id #430 | Release: None | Updated: Jan 14 at 8:16 AM by zoenie | Created: Jan 14 at 7:08 AM by zoenie