Skip to content

Commit 0ff3d07

Browse files
committed
Combine socket error to string conversion to common function in GlobalSock unit
1 parent a9cc526 commit 0ff3d07

File tree

5 files changed

+160
-207
lines changed

5 files changed

+160
-207
lines changed

source/__version.id

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.6.107
1+
2.6.109

source/rtl/ultibo/core/globalconst.pas

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,12 @@ interface
5252
{Global constants}
5353
const
5454
{Version constants}
55-
ULTIBO_RELEASE_DATE = '2 October 2025';
55+
ULTIBO_RELEASE_DATE = '8 October 2025';
5656
ULTIBO_RELEASE_NAME = 'Beetroot';
57-
ULTIBO_RELEASE_VERSION = '2.6.107';
57+
ULTIBO_RELEASE_VERSION = '2.6.109';
5858
ULTIBO_RELEASE_VERSION_MAJOR = 2;
5959
ULTIBO_RELEASE_VERSION_MINOR = 6;
60-
ULTIBO_RELEASE_VERSION_REVISION = 107;
60+
ULTIBO_RELEASE_VERSION_REVISION = 109;
6161

6262
FPC_COMPILER_VERSION = {$I %FPCVERSION%}; {The version of FPC used to compile the RTL}
6363

source/rtl/ultibo/core/globalsock.pas

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1535,6 +1535,8 @@ function SequenceGEQ(A,B:LongInt):Boolean; inline;
15351535

15361536
function ProtocolToString(Protocol:Word):String;
15371537

1538+
function SocketErrorToString(Error:LongInt):String;
1539+
15381540
{==============================================================================}
15391541
{==============================================================================}
15401542

@@ -1667,6 +1669,100 @@ function ProtocolToString(Protocol:Word):String;
16671669
end;
16681670
end;
16691671

1672+
{==============================================================================}
1673+
1674+
function SocketErrorToString(Error:LongInt):String;
1675+
begin
1676+
{}
1677+
Result:='';
1678+
1679+
case LongWord(Error) of {LongWord for WSA_WAIT_FAILED}
1680+
ERROR_SUCCESS:Result:='ERROR_SUCCESS';
1681+
1682+
WSAEINTR:Result:='WSAEINTR';
1683+
WSAEBADF:Result:='WSAEBADF';
1684+
WSAEACCES:Result:='WSAEACCES';
1685+
WSAEFAULT:Result:='WSAEFAULT';
1686+
WSAEINVAL:Result:='WSAEINVAL';
1687+
WSAEMFILE:Result:='WSAEMFILE';
1688+
1689+
WSAEWOULDBLOCK:Result:='WSAEWOULDBLOCK';
1690+
WSAEINPROGRESS:Result:='WSAEINPROGRESS';
1691+
WSAEALREADY:Result:='WSAEALREADY';
1692+
WSAENOTSOCK:Result:='WSAENOTSOCK';
1693+
WSAEDESTADDRREQ:Result:='WSAEDESTADDRREQ';
1694+
WSAEMSGSIZE:Result:='WSAEMSGSIZE';
1695+
WSAEPROTOTYPE:Result:='WSAEPROTOTYPE';
1696+
WSAENOPROTOOPT:Result:='WSAENOPROTOOPT';
1697+
WSAEPROTONOSUPPORT:Result:='WSAEPROTONOSUPPORT';
1698+
WSAESOCKTNOSUPPORT:Result:='WSAESOCKTNOSUPPORT';
1699+
WSAEOPNOTSUPP:Result:='WSAEOPNOTSUPP';
1700+
WSAEPFNOSUPPORT:Result:='WSAEPFNOSUPPORT';
1701+
WSAEAFNOSUPPORT:Result:='WSAEAFNOSUPPORT';
1702+
WSAEADDRINUSE:Result:='WSAEADDRINUSE';
1703+
WSAEADDRNOTAVAIL:Result:='WSAEADDRNOTAVAIL';
1704+
WSAENETDOWN:Result:='WSAENETDOWN';
1705+
WSAENETUNREACH:Result:='WSAENETUNREACH';
1706+
WSAENETRESET:Result:='WSAENETRESET';
1707+
WSAECONNABORTED:Result:='WSAECONNABORTED';
1708+
WSAECONNRESET:Result:='WSAECONNRESET';
1709+
WSAENOBUFS:Result:='WSAENOBUFS';
1710+
WSAEISCONN:Result:='WSAEISCONN';
1711+
WSAENOTCONN:Result:='WSAENOTCONN';
1712+
WSAESHUTDOWN:Result:='WSAESHUTDOWN';
1713+
WSAETOOMANYREFS:Result:='WSAETOOMANYREFS';
1714+
WSAETIMEDOUT:Result:='WSAETIMEDOUT';
1715+
WSAECONNREFUSED:Result:='WSAECONNREFUSED';
1716+
WSAELOOP:Result:='WSAELOOP';
1717+
WSAENAMETOOLONG:Result:='WSAENAMETOOLONG';
1718+
WSAEHOSTDOWN:Result:='WSAEHOSTDOWN';
1719+
WSAEHOSTUNREACH:Result:='WSAEHOSTUNREACH';
1720+
WSAENOTEMPTY:Result:='WSAENOTEMPTY';
1721+
WSAEPROCLIM:Result:='WSAEPROCLIM';
1722+
WSAEUSERS:Result:='WSAEUSERS';
1723+
WSAEDQUOT:Result:='WSAEDQUOT';
1724+
WSAESTALE:Result:='WSAESTALE';
1725+
WSAEREMOTE:Result:='WSAEREMOTE';
1726+
1727+
WSASYSNOTREADY:Result:='WSASYSNOTREADY';
1728+
WSAVERNOTSUPPORTED:Result:='WSAVERNOTSUPPORTED';
1729+
WSANOTINITIALISED:Result:='WSANOTINITIALISED';
1730+
WSAEDISCON:Result:='WSAEDISCON';
1731+
WSAENOMORE:Result:='WSAENOMORE';
1732+
WSAECANCELLED:Result:='WSAECANCELLED';
1733+
WSAEINVALIDPROCTABLE:Result:='WSAEINVALIDPROCTABLE';
1734+
WSAEINVALIDPROVIDER:Result:='WSAEINVALIDPROVIDER';
1735+
WSAEPROVIDERFAILEDINIT:Result:='WSAEPROVIDERFAILEDINIT';
1736+
WSASYSCALLFAILURE:Result:='WSASYSCALLFAILURE';
1737+
WSASERVICE_NOT_FOUND:Result:='WSASERVICE_NOT_FOUND';
1738+
WSATYPE_NOT_FOUND:Result:='WSATYPE_NOT_FOUND';
1739+
WSA_E_NO_MORE:Result:='WSA_E_NO_MORE';
1740+
WSA_E_CANCELLED:Result:='WSA_E_CANCELLED';
1741+
WSAEREFUSED:Result:='WSAEREFUSED';
1742+
1743+
WSAHOST_NOT_FOUND:Result:='WSAHOST_NOT_FOUND';
1744+
WSATRY_AGAIN:Result:='WSATRY_AGAIN';
1745+
WSANO_RECOVERY:Result:='WSANO_RECOVERY';
1746+
WSANO_DATA:Result:='WSANO_DATA';
1747+
{WSANO_ADDRESS:Result:='WSANO_ADDRESS';}
1748+
1749+
{WinSock 2 extensions}
1750+
WSA_IO_PENDING:Result:='WSA_IO_PENDING';
1751+
WSA_IO_INCOMPLETE:Result:='WSA_IO_INCOMPLETE';
1752+
WSA_INVALID_HANDLE:Result:='WSA_INVALID_HANDLE';
1753+
WSA_INVALID_PARAMETER:Result:='WSA_INVALID_PARAMETER';
1754+
WSA_NOT_ENOUGH_MEMORY:Result:='WSA_NOT_ENOUGH_MEMORY';
1755+
WSA_OPERATION_ABORTED:Result:='WSA_OPERATION_ABORTED';
1756+
{WSA_INVALID_EVENT:Result:='WSA_INVALID_EVENT';}
1757+
WSA_MAXIMUM_WAIT_EVENTS:Result:='WSA_MAXIMUM_WAIT_EVENTS';
1758+
WSA_WAIT_FAILED:Result:='WSA_WAIT_FAILED';
1759+
{WSA_WAIT_EVENT_0:Result:='WSA_WAIT_EVENT_0';}
1760+
WSA_WAIT_IO_COMPLETION:Result:='WSA_WAIT_IO_COMPLETION';
1761+
WSA_WAIT_TIMEOUT:Result:='WSA_WAIT_TIMEOUT';
1762+
{WSA_INFINITE:Result:='WSA_INFINITE';}
1763+
end;
1764+
end;
1765+
16701766
{==============================================================================}
16711767
{==============================================================================}
16721768

source/rtl/ultibo/core/winsock.pas

Lines changed: 1 addition & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -4109,66 +4109,7 @@ function WinsockRedirectOutput(s:TSocket):Boolean;
41094109
function WinsockErrorToString(AError:LongInt):String;
41104110
begin
41114111
{}
4112-
Result:='';
4113-
case AError of
4114-
ERROR_SUCCESS:Result:='ERROR_SUCCESS';
4115-
4116-
WSAEINTR:Result:='WSAEINTR';
4117-
WSAEBADF:Result:='WSAEBADF';
4118-
WSAEACCES:Result:='WSAEACCES';
4119-
WSAEFAULT:Result:='WSAEFAULT';
4120-
WSAEINVAL:Result:='WSAEINVAL';
4121-
WSAEMFILE:Result:='WSAEMFILE';
4122-
4123-
WSAEWOULDBLOCK:Result:='WSAEWOULDBLOCK';
4124-
WSAEINPROGRESS:Result:='WSAEINPROGRESS';
4125-
WSAEALREADY:Result:='WSAEALREADY';
4126-
WSAENOTSOCK:Result:='WSAENOTSOCK';
4127-
WSAEDESTADDRREQ:Result:='WSAEDESTADDRREQ';
4128-
WSAEMSGSIZE:Result:='WSAEMSGSIZE';
4129-
WSAEPROTOTYPE:Result:='WSAEPROTOTYPE';
4130-
WSAENOPROTOOPT:Result:='WSAENOPROTOOPT';
4131-
WSAEPROTONOSUPPORT:Result:='WSAEPROTONOSUPPORT';
4132-
WSAESOCKTNOSUPPORT:Result:='WSAESOCKTNOSUPPORT';
4133-
WSAEOPNOTSUPP:Result:='WSAEOPNOTSUPP';
4134-
WSAEPFNOSUPPORT:Result:='WSAEPFNOSUPPORT';
4135-
WSAEAFNOSUPPORT:Result:='WSAEAFNOSUPPORT';
4136-
WSAEADDRINUSE:Result:='WSAEADDRINUSE';
4137-
WSAEADDRNOTAVAIL:Result:='WSAEADDRNOTAVAIL';
4138-
WSAENETDOWN:Result:='WSAENETDOWN';
4139-
WSAENETUNREACH:Result:='WSAENETUNREACH';
4140-
WSAENETRESET:Result:='WSAENETRESET';
4141-
WSAECONNABORTED:Result:='WSAECONNABORTED';
4142-
WSAECONNRESET:Result:='WSAECONNRESET';
4143-
WSAENOBUFS:Result:='WSAENOBUFS';
4144-
WSAEISCONN:Result:='WSAEISCONN';
4145-
WSAENOTCONN:Result:='WSAENOTCONN';
4146-
WSAESHUTDOWN:Result:='WSAESHUTDOWN';
4147-
WSAETOOMANYREFS:Result:='WSAETOOMANYREFS';
4148-
WSAETIMEDOUT:Result:='WSAETIMEDOUT';
4149-
WSAECONNREFUSED:Result:='WSAECONNREFUSED';
4150-
WSAELOOP:Result:='WSAELOOP';
4151-
WSAENAMETOOLONG:Result:='WSAENAMETOOLONG';
4152-
WSAEHOSTDOWN:Result:='WSAEHOSTDOWN';
4153-
WSAEHOSTUNREACH:Result:='WSAEHOSTUNREACH';
4154-
WSAENOTEMPTY:Result:='WSAENOTEMPTY';
4155-
WSAEPROCLIM:Result:='WSAEPROCLIM';
4156-
WSAEUSERS:Result:='WSAEUSERS';
4157-
WSAEDQUOT:Result:='WSAEDQUOT';
4158-
WSAESTALE:Result:='WSAESTALE';
4159-
WSAEREMOTE:Result:='WSAEREMOTE';
4160-
4161-
WSASYSNOTREADY:Result:='WSASYSNOTREADY';
4162-
WSAVERNOTSUPPORTED:Result:='WSAVERNOTSUPPORTED';
4163-
WSANOTINITIALISED:Result:='WSANOTINITIALISED';
4164-
WSAEDISCON:Result:='WSAEDISCON';
4165-
4166-
WSAHOST_NOT_FOUND:Result:='WSAHOST_NOT_FOUND';
4167-
WSATRY_AGAIN:Result:='WSATRY_AGAIN';
4168-
WSANO_RECOVERY:Result:='WSANO_RECOVERY';
4169-
WSANO_DATA:Result:='WSANO_DATA';
4170-
{WSANO_ADDRESS:Result:='WSANO_ADDRESS';}
4171-
end;
4112+
Result:=SocketErrorToString(AError);
41724113
end;
41734114

41744115
{==============================================================================}

0 commit comments

Comments
 (0)