---
name: "scan_ip4"
section: "3"
platform: "linux"
package: "libowfat-dev"
version: "0.32-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/scan_ip4"
---

# scan\_ip4(3)

parse an IPv4 number in dotted-decimal notation

## NAME

scan\_ip4 - parse an IPv4 number in dotted-decimal notation

## SYNTAX

**#include \<libowfat/ip4.h\>**

int **scan\_ip4**(const char \**src*,char *ip*\[4\]);

## DESCRIPTION

scan\_ip4 parses an IPv4 number in dotted-decimal ASCII representation from *src* and writes the result into *ip*. It returns the number of bytes read from *src* or 0 if the parsing failed.

Unlike many other IP parsing routines, scan\_ip4 does not recognize octal (like **0177.0.0.1**) or hexadecimal numbers (like **0x7f000001**).

## EXAMPLE

\#include \<libowfat/str.h\>\
 \#include \<libowfat/ip4.h\>

  char buf\[\]="160.45.40.10";\
   char ip\[4\];\
   if (scan\_ip4(buf,ip) != str\_len(buf))\
     parse\_error();

## SEE ALSO

[fmt\_ip4(3)](/fmt_ip4/3.md), [scan\_ip6(3)](/scan_ip6/3.md), [inet\_pton(3)](/inet_pton/3.md)
