|
Hello.
I am working on a small socket application that utilizes SSL and FTP protocol.
The problem is that the server response with error:
"503 Log in with USER first."
The SSL is OpenSSL. Here is an overview of the sequence.
- winsock connect
- AUTH SSL
- SSL_connect()
- handshake is success
// At this point, everything is send/recv via SSL
// SSL_send() and SSL_recv()
- PBSZ 0
- PROT P
- USER <username>
- PASS <password>
...
// All the above are successful
// Server respond "230 <username> logged in."
// Every command afterward returns an error
- SYST
Basically, every command the program sends, the server would return "503 Log in with USER first."
Do you need to package outgoing data in a special SSL package before passing it to SSL_send()?
Please post if you have any idea.
Thanks,
Kuphryn
|
|
|
|
|
I'm still having trouble with this. I have a dll that uses the WM_COPYDATA to send a struct to a mainframe window. The struct has some longs (4 I think) and a char[256]. This has been working and does work on about 90% of PC's. A few customers and some in-house people do not see the text that is being passed.
After checking into it, I have found that the pointer to the lpCopyDataStruct is not correct on the machines that have the problem. I can see where my struct begins by doing a memory dump starting at the erroneous pointer and it is there but much further down the line (maybe 40-50 bytes?)than where the pointer says it should be.
Can anyonne think of a reason why this works most of the time but fails on certain PC's? I have reports that some NT, 2000, and XP machines have this trouble but not everyone with those OS's have the problem.
Uuugh!!
Thanks,
Dave
|
|
|
|
|
is it possible they have those fancy clipboards running where u can have many virtual clipboards and select between them?
u prolly thought of that already right?
"there is no spoon" biz stuff about me
|
|
|
|
|
I'm not sure what that is. I'll see if I can find more info on it. Does that affect how the WM_COPYDATA message works?
|
|
|
|
|
yes it can
check to see if they have any non-standard or enhanced clipboards utilities or anything like it
"there is no spoon" biz stuff about me
|
|
|
|
|
Here's what fixed the problem:
We noticed that two copies of Rundll32.exe were running and when they were killed, things worked. We looked into what was causing the Rundll32 to be executed and found that the tray application for the NVidia software was responsible. Once that was removed from the startup, things worked fine on both PC's where the trouble was reported. Those people can no longer use the tray app for the video card but they didn't need it.
So, do you think it's something NVidia is doing, RunDll32, or just Windows that is at the root of the problem? Why would my pointer being passed in WM_COPYDATA get corrupt due to this app running?
Thanks for your help,
Dave.
|
|
|
|
|
Is there any way of finding out if a shell open of a file (double clicking a file) has occured in a program.
Thanks you
|
|
|
|
|
|
Thats really more complicated than I want. All I want is to be able to tell if a file has been opened by double clicking it, the MFC framework already loads the file and Initialises the Document, I simply want to know whether to display a dialog box if a file has not been opened.
Thanks anyway
|
|
|
|
|
Ok,
I have been trying to create a project that I could call when Pro Engineer Wildfire starts up. No matter what I do the project will not compile.
Here is the example that I am using
http://www.caddigest.com/subjects/pro_engineer/select/tutorials/jovanovic_toolkit_environment.htm
Here is what I need to do. When an assembly is opened I need to get all the Drawings / Sub Assemblies.. ect that are called out and log them.If anyone here has coded a program for Pro Engineer wildfire, PLEASE HELP..
Thanks
Will
|
|
|
|
|
OMalleyW wrote:
No matter what I do the project will not compile.
you can be more specific and provide what compilation error that you get ?
MSN Messenger.
prakashnadar@msn.com
Tip of the day of visual C++ IDE.
"We use it before you do! Visual C++ was developed using Visual C++"
|
|
|
|
|
thank you for the response. With Pro Engineer wildfire there is Pro Toolkit which gives you an API to program to Pro Engineer. After I added the directories where all the Pro toolkit header files are located I would get errors . Here is an example
one of the errors said that the function ProMessageDisplay does not take 3 arguments.. So I looked in the ProMessage.h file provided by PTC (the company that makes Pro Engineer)
Here is the declaration:
extern ProError ProMessageDisplay(
#ifdef PRO_USE_VAR_ARGS
ProFileName file_name,
ProCharLine message_name,
...
#endif
);
Because I am just getting into C++ I was thinking that the declaration was causing a problem, but I am not really sure.
Thank you again for the help
Will
|
|
|
|
|
did you define PRO_USE_VAR_ARGS somewhere, its a conditional build so i guess thats wehre the problem lies... Some where in your .h file do
#define PRO_USE_VAR_ARGS 1
MSN Messenger.
prakashnadar@msn.com
Tip of the day of visual C++ IDE.
"We use it before you do! Visual C++ was developed using Visual C++"
|
|
|
|
|
I need a way to detect when network connections (LAN, dial-up, wireless, etc.) become available or unavailable. The NotifyAddrChange function in the IP Helper API seems to do what I need, but I was wondering if there were any alternatives that I should explore.
Any suggestions?
--------
There are 10 types of people in this world. Those who know binary and those who don't.
|
|
|
|
|
Yes, search for ISensNetwork.
"The pointy end goes in the other man." - Antonio Banderas (Zorro, 1998)
|
|
|
|
|
Thanks. I knew there was another way that I'd stumbled across a while back, and that was it.
--------
There are 10 types of people in this world. Those who know binary and those who don't.
|
|
|
|
|
Does anyone know of a replacement for stretchblt? I have some code that doesn't allow the use of the windows api call, so I need to find some source that can be used instead of the API.
Anyone?
------- sig starts
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
"You won't like me when I'm angry..." - Dr. Bruce Banner
Please review the Legal Disclaimer in my bio.
------- sig ends
|
|
|
|
|
John Simmons / outlaw programmer wrote:
I have some code that doesn't allow the use of the windows api call
Could it be that you are working on win98? some apis would work in win2k and not in win98.
MSN Messenger.
prakashnadar@msn.com
Tip of the day of visual C++ IDE.
"We use it before you do! Visual C++ was developed using Visual C++"
|
|
|
|
|
Actually, I'm working on a minimum kernel build for Windows CE 2.12. The "minkern" build of CE does not include the API's I need (such as bitblt, or stretchblt), so I have to find an alternative.
------- sig starts
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
"You won't like me when I'm angry..." - Dr. Bruce Banner
Please review the Legal Disclaimer in my bio.
------- sig ends
|
|
|
|
|
Oh! i didnt think of that
MSN Messenger.
prakashnadar@msn.com
Tip of the day of visual C++ IDE.
"We use it before you do! Visual C++ was developed using Visual C++"
|
|
|
|
|
I am testing my application on different client machines. The application got into an infinate loop when trying to open the database using ODBC. The error message says "Specified driver could not be located due to system error 5...". I am trying to track it down to exit the application when this occurs, but need help figuring out the value at m_nRetCode. There is a bunch of them from MSDN library. I tried
catch(CDBException* e)
{
//exit if not invalid user name and password
if (e->m_nRetCode==AFX_SQL_ERROR_API_CONFORMANCE || e->m_nRetCode == AFX_SQL_ERROR_CONNECT_FAIL
|| e->m_nRetCode == SQL_INVALID_HANDLE || e->m_nRetCode == AFX_SQL_ERROR_ODBC_LOAD_FAILED
|| e->m_nRetCode == AFX_SQL_ERROR_SQL_CONFORMANCE)
{
AfxMessageBox("Database Logon Error - " + e->m_strError);
exit(1);
return NULL;
}
else
AfxMessageBox("Database Logon Error, invalid user name or password - " + e->m_strError);
goto TRY_AGAIN;
}
But none of these is the correct one.
-Elizabeth
Elizabeth
|
|
|
|
|
How about using the reverse approach ?
Take the return code of an 'invalid user name or password' event, fire the messagebox and goto TRY_AGAIN if this code equals the exception's return value. If it does not, fire a message box saying 'unspecified database error' and get the error string like you now do and exit the application. In means of implementation, this is just about reversing the if-clauses.
-Antti Keskinen
----------------------------------------------
The definition of impossible is strictly dependant
on what we think is possible.
|
|
|
|
|
But there is no return code m_nRetCode for invalid name and password.
Elizabeth
|
|
|
|
|
For all possible ODBC error codes, you can see the MSDN for ODBC Programmer's Reference Appendix A: ODBC Error Codes.
In order to see the true error caused by your application, catch all return values by type SQL_ERROR and then seeing CDBException::m_strStateNativeOrigin . In this string, the first 'State' string can be found from the ODBC Error Codes list.
From the forementioned list, the state code 08004 means 'Server rejected the connection'. This, by using free intrepretation, can be understood as 'Invalid logon' as well.
There is an ODBC Query Tool around in CodeProject that has a source code attached. If you can't find any other solution, try browsing through this source code and seeing how it handles return values from the ODBC driver manager.
The tool's page can be found from here[^]. Written by George Poulose.
-Antti Keskinen
----------------------------------------------
The definition of impossible is strictly dependant
on what we think is possible.
|
|
|
|
|
Thank you. Your suggestion works. I got both state codes 28000 and IM006 returned when an invalid user name or password is entered.
Elizabeth
|
|
|
|