diff options
author | michael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-05-15 10:47:48 +0000 |
---|---|---|
committer | michael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-05-15 10:47:48 +0000 |
commit | 24b85003b087a9d3a334e68d16d52d99484bcac5 (patch) | |
tree | d495835e4fb4a0806c72344fcaa7e3afa9b4f097 /packages/rtl-extra | |
parent | c3c36283796af0dc28b7aa28b97b1f453b7c0472 (diff) | |
download | fpc-24b85003b087a9d3a334e68d16d52d99484bcac5.tar.gz |
* Fix bug ID 37080: too permissive val() on supplied quads
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@45367 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/rtl-extra')
-rw-r--r-- | packages/rtl-extra/src/inc/sockets.inc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/rtl-extra/src/inc/sockets.inc b/packages/rtl-extra/src/inc/sockets.inc index 7817f79f5a..b83d573243 100644 --- a/packages/rtl-extra/src/inc/sockets.inc +++ b/packages/rtl-extra/src/inc/sockets.inc @@ -303,6 +303,9 @@ end; function StrToHostAddr(IP : AnsiString) : in_addr ; +Const + AllowedChars = ['.','0'..'9']; + Var Dummy : AnsiString; I,j,k : Longint; @@ -310,6 +313,9 @@ Var begin strtohostaddr.s_addr:=0; //:=NoAddress; + for I:=1 to Length(IP) do + if Not (IP[I] in AllowedChars) then + exit; For I:=1 to 4 do begin If I<4 Then |