Google
 
 

Home
Quick Tour

Product Info

  Freeware eMail CRM Maximize the life-time value of your clients and getting them to smile at you Art of eMail CRM Applying minimum efforts for maximum result, at the shortest time? emails eMail Bolts & Nuts Interesting emails stuff that you should  know eMail Broadcast FAQ's eMail Marketing Tips
Great email strategies to help you increase sales
 
 
 

Page 1/3 (This page) - Winsock Error Codes

Page 2/3 - User Fixable Errors - There are two basic types of errors: those an application user can remedy, and those he cannot. A user should never see an error that is not user-fixable.

Page 3/3 - List of user-fixable errors

Winsock Error Codes - Return error codes by Windows Sockets API - The following is a list of error codes returned by the WSAGetLastErrorcall along with their descriptions

There are two kinds of errors in Windows Sockets: task-based (or thread-based) and socket-based. An application can retrieve the task-based error by calling WSAGetLastError()www.sockets.com/winsock.htm#GetLastError
immediately after a WinSock function fails:

  • reported in a WSAAsyncSelect() www.sockets.com/winsock.htm#AsyncSelect asynchronous FD_ event notification message (which you can extract with the platform independent "message cracker" macro WSAGETSELECTERROR(lParam)).
     
  • retrieved by a call to getsockopt() SO_ERROR (which also resets the error value to zero).
    www.sockets.com/winsock.htm#GetSockOpt

WSAStartup() www.sockets.com/winsock.htm#Startup is the only function that returns an actual error value, rather than simply indicating an error condition (function failure).

 
ESMTP Status Error Codes Command Group for data receive reply codes
 
Definition of extension to the SMTP service RFC-821
 
Winsock Error Codes
 
Mail Object Error Message
 
eMail Bolts & Nuts FAQ's
How to manage and clean bounced undelivered emails? Understand why emails get bounced
How to use your desktop PCs as an email server and bypass your ISP email server, a simple process using a free mail server program
How to test your message and see if it gets deleted by broad based anti-spam filters?
A one page email course. Everything you wanted to know about emailing in a "nut shell"
Quick guide to: dig finger traceroute ping whois nslookup IP block FTP SMTP relay TCP/IP Port
How to embed email tracking code into your email? Invisible counters, codes, scripts to track viewer
Send HTML or TEXT email using formatted HTML email, you can send an entire webpage
How to embed images into HTML email for faster emailing? Prevent displaying linked-site in recipient email client status bar
RFC defined ESMTP, SMTP Status Email Error Codes? These codes are used to provide informative explanations of error conditions
How email works?  Delivery of each email is done by your ISP mail server, first establishing a conversation through your recipient port 25
Some spiders visit site after site, collecting email addresses and controlling these rogue spiders spam bots or email harvesters with robot.txt
About TCP/IP and mail server port numbers? A number between 1 and 65535 which identifies to the receiving computer what function to perform
This makes sense, since you can't call WSAGetLastError() to retrieve the error value until WSAStartup() succeeds since it will fail with WSANOTINITIALISED www.sockets.com/err_lst1.htm#SANOTINITIALISED


Windows Sockets does not support
the Berkeley Sockets error variables errno or h_errno because these per-process global variables don't allow for per-thread error information.


The WINSOCK.H header file
provides a macro for h_errno for Berkeley source code compatibility--simply calls
WSAGetLastError() The equivalent macro for errno wasn't included since some applications use errno for non-socket (e.g. file handle) errors.


Most of the error values
and their manifest constants (macros) are derived from Berkeley Sockets.

The WinSock error values are the BSD error values with a "WinSock API base" error WSABASEERR
www.sockets.com/err_lst1.htm#WSABASEERR value added to each of them.

 

The macro for each WinSock API error is the equivalent BSD error's macro, with the three letters WSA prepended to it.

So, for instance, the BSD manifest constant for the "would block" error was defined in the Berkeley Sockets ERRNO.H header file as:

#define  EWOULDBLOCK  35 

and WINSOCK.H redefines it as:

#define  WSAEWOULDBLOCK  (WSABASEERR+35)
www.sockets.com/err_lst1.htm#WAEWOULDBLOCK


A few (lower value)
WinSock error macro definitions refer to Microsoft C constants. In some cases, these redefine file access errors since Windows NT can treat a socket like a file handle.

A few other (higher value) macros are entirely new to Windows Sockets.

They refer to error conditions unique to Windows Sockets, such as invalid WinSock version requests, uninitialized WinSock DLL access, or failed hostname resolution attempts.

 

All of the Windows Sockets error values have macros defined for them in the WINSOCK.H header file.

They all have a "WSA" prefix and their values are all biased by the WinSock API base error WSABASEERR (10000) value. See list of user-fixable errors


The value for WSABASEERR is fairly arbitrary. It's high simply because error values in the Windows API are high values by convention. There is a benefit, though: the unique bias creates identifiable WinSock error values.

What Errors to Expect?
Don't assume the only
errors you'll encounter are the ones listed with each function in the WinSock specification. Section 3.3.4 "Error Handling" in the v1.1 Windows Sockets specification warns against this:

Note that this specification defines a recommended set of error codes, and lists the possible errors which may be returned as a result of each function.

It may be the case in some implementations that other Windows Sockets error codes will be returned in addition to those listed, and applications should be prepared to handle errors other than those enumerated under each API description.

The specification is a common denominator among WinSock implementations. The errors it lists don't provide "fine resolution" in all cases, which means it doesn't account for some conditions that some network systems can detect.

Finer resolution in error reporting is a double edged sword: with more accurate error values it's easier to diagnose problems when they occur, but it's also more difficult to write an application that can handle all contingencies.

The better prepared your application is for any error, the more gracefully you'll handle it, and the easier you'll make your job and the job of your support staff.
Page 2/3 - User Fixable Errors

Page 1/3 (This page) - Winsock Error Codes

Page 2/3 - User Fixable Errors - There are two basic types of errors: those an application user can remedy, and those he cannot. A user should never see an error that is not user-fixable.

Page 3/3 - List of user-fixable errors

Free2-Try 100% effective. The easiest way to Stop Spam getting into your PC. I recommend it.

stop spam

 
 
.

.

Free eBook Sun Tzu Art of War Commanders without thoughtful strategy invite defeat.

Sun Tzu

 

Free eBook Great online Stealth Marketing strategies to help you increase sales

email tips

 
 
eMail Bolts & Nuts FAQ's
How to manage and clean bounced undelivered emails? Understand why emails get bounced
How to use your desktop PCs as an email server and bypass your ISP email server, a simple process using a free mail server program
How to test your message and see if it gets deleted by broad based anti-spam filters?
A one page email course. Everything you wanted to know about emailing in a "nut shell"
Quick guide to: dig finger traceroute ping whois nslookup IP block FTP SMTP relay TCP/IP Port
How to embed email tracking code into your email? Invisible counters, codes, scripts to track viewer
Send HTML or TEXT email using formatted HTML email, you can send an entire webpage
How to embed images into HTML email for faster emailing? Prevent displaying linked-site in recipient email client status bar
RFC defined ESMTP, SMTP Status Email Error Codes? These codes are used to provide informative explanations of error conditions
How email works?  Delivery of each email is done by your ISP mail server, first establishing a conversation through your recipient port 25
Some spiders visit site after site, collecting email addresses and controlling these rogue spiders spam bots or email harvesters with robot.txt
About TCP/IP and mail server port numbers? It is a number between 1 and 65535 which identifies to the receiving computer what function you want to perform

Spam-tracking 103 WHOIS tool nslookup and traceroute freeware download

 

whois.internic.net or network solutions are network registries to find out contact info for current domain or IP address

.

nslookup a DNS tool that Perform forward and reverse DNS queries for the current address (this will usually give you the IP address of a hostname)

.

traceroute finds the route packets take between you and the selected address

.

Email in a "nut shell" a one page course about emailing. Everything you wanted to know about emailing.

.

How email works? Delivery of each email is done by your ISP mailserver establishing a conversation through (port 25) of your recipient mail server

.

 
Can't find
what you want?

Try Google...
 

Google

 

 

 

 

©Copyright June 2002  Permission to re-print, please click here

Suggestions or feed-back, please drop us a note  |  eMail CRM Freeware  | This site>>eMail Bolts & Nuts

Home | Guest Book | Refund Policy | Privacy Policy | Contact Us | Support | Purchase | Product Info | Quick Tour

Minute WisdomSun Tzu Art of War | Useful Sites | eMail Broadcast FAQ's | Art of eMail CRM | eMail Marketing Tips