|
Has anyone tried implementing HTTPS protocol in a C++ application.
I started reading the RFC2818, but I'm confused over implementation.
|
|
|
|
|
I would recommend RFC2616[^] as a starting point and than blend it with a SSL/TLS library instead of using TCP. The library should take care of most encryption/certificates handling (e.g. have a look at OpenSSL, GnuTLS, Microsoft's CryptoAPI). Alternatively use a library from the shelf that offer HTTPS (e.g. libcurl, WinInet, QHttp).
You need to decide if you want to implement everything yourself or take an existing C++ library. First will teach you a lot about networking protocols, later gives you the result right away. Hope this helps!
/M
|
|
|
|
|
Moak wrote: First will teach you a lot about networking protocols, later gives you the result right away.
Nice reply in general. I'd change the bit I quoted to read as follows:
The first will teach you a lot about networking protocols and convince you to go with the second.
Steve
|
|
|
|
|
Hi i have an MFc application which is compiled in Visual studio 6 .
I have created a dll that is compiled in VS2005.
It works fine on development machine giving me all desired results.
But after deploying the exe and dll on Other machine which is meant to be for testing purpose. I copied all the dependent dll in the same folder is required for dll that is compiled on VS2005.
But the dll is failed to load using loadlibrary.
To solve this issue i created a setup of MSM of Visual studio Merge module and installed on the Testing machine. I was expecting that this will atleast solve my prioblem but it also failed to load dll.
Any one has suggestion that how this can be achieved?
|
|
|
|
|
try Depends[^] to see if there are any missing DLLs.
|
|
|
|
|
PrafullaShirke27 wrote: But the dll is failed to load using loadlibrary.
Did you call GetLastError() to find out why?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
Thanks guys for response.
I tried depends and added the necessary dll for that and GetLastError too.
And according to that The operation was successful.
|
|
|
|
|
Hi all,
I want to make a picture control in which i can display various types of images like bmp, png, ico and i want at runtime if i select a path than that images should display according to path.
But my problem is i don't want to use gdiplus lib in my code....
Can i do this work without using gdiplus if yes than how so
Thanks in advance
|
|
|
|
|
The CxImage[^] library would do the trick for you.
|
|
|
|
|
there are dozens of graphics libraries out there.
|
|
|
|
|
learningvisualc wrote: Can i do this work without using gdiplus if yes than how so
Why don't you like GDI+ (just curiosity)?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
learningvisualc wrote: But my problem is i don't want to use gdiplus lib in my code....
Why not ?
Is is an school assignment about image formats ? or do you really need to loose time and effort to re-invent the wheel on a paid salary ?
Watched code never compiles.
|
|
|
|
|
Hi Experts
I need at() feature in my STL List. can anyone help me out?
With Regards
R e h a n
|
|
|
|
|
Maybe you should use a vector[^] which has at built in. Alternatively you could write your own using an iterator, but it's probably not worth the trouble.
It's time for a new signature.
|
|
|
|
|
If you need direct access to an element at a specific index in your list, why don't use a vector instead of a list ?
|
|
|
|
|
std::list is not a "random access" sequence (i.e. cannot use a random access iterator).
Watched code never compiles.
|
|
|
|
|
As Richard and the others have said, use vector if you can. If you really really really must have at-like functionality you can use std::advance to do it.
Cheers,
Ash
|
|
|
|
|
Thanks a lot....
It is working......
|
|
|
|
|
What about:
template <typename T> class mylist: public list<T>
{
public:
T & at(int n)
{
int i;
list::iterator it= this->begin();
i = 0;
while (it != this->end())
{
if ( i==n ) return *it;
i++; it++;
}
throw( out_of_range("out of mylist range"));
}
};
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
|
depending on how the at() is used you can shortcut operations by holding the current iterator around as long as add/delete/insert operations have not been done. Using the difference between last at() and current at() you can move up or down the list. It takes some work, but if you are doing big searches you wouldn't always want to start at the beginning unless the new at() command is closer to the start or the end. and if you do add/delete/insert, just invalidate the iterator, and start over as you have done.
_________________________
John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."
Shhhhh.... I am not really here. I am a figment of your imagination.... I am still in my cave so this must be an illusion....
|
|
|
|
|
Clever.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
CPallini wrote: Clever.
naw... comes from using skiplists, which made me think that wouldn't be a bad method here if there aren't many add-deletes, skip-lists let you jump around lists rapidly.
_________________________
John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."
Shhhhh.... I am not really here. I am a figment of your imagination.... I am still in my cave so this must be an illusion....
|
|
|
|
|
Well, skiplists (I didn't know about) are clever, at lest...
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
If you use at() often you might consider something like a skip-list:
http://www.codersource.net/microsoft-net/c-advanced/skip-list-a-simpler-alternative-to-binary-trees.aspx[^]
Skip lists would allow you to skip sequentially starting from the beginning on ever at() command.
_________________________
John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."
Shhhhh.... I am not really here. I am a figment of your imagination.... I am still in my cave so this must be an illusion....
|
|
|
|