---
name: "Net::Write::Layer"
section: "3pm"
platform: "linux"
package: "libnet-write-perl"
version: "1.10-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::Write::Layer"
---

# Net::Write::Layer(3pm)

base class and constants

## NAME

Net::Write::Layer - base class and constants

## SYNOPSIS

```
   use Net::Write::Layer qw(:constants);
```

## DESCRIPTION

This is the base class for **Net::Write::Layer2**, **Net::Write::Layer3** and **Net::Write::Layer4** modules.

It just provides those layers with inheritable attributes, methods and constants.

## ATTRIBUTES

- **dev**

  Network interface to use.

- **dst**

  Target IPv4 or IPv6 address.

- **protocol**

  Transport layer protocol to use (TCP, UDP, ...).

- **family**

  Adresse family to use (NW\_AF\_INET, NW\_AF\_INET6).

## METHODS

- **new**

  Object constructor. Returns undef on error.

- **open**

  Open the descriptor, when you are ready to **send**. Returns undef on error.

- **send** (scalar)

  Send the raw data passed as a parameter. Returns undef on failure, true otherwise.

- **close**

  Close the descriptor.

- **nw\_getsaddr**

  - **nw\_inet\_pton**

  Internal functions.

## CONSTANTS

- **NW\_AF\_INET**

  - **NW\_AF\_INET6**

  - **NW\_AF\_UNSPEC**

  Address family constants, for use with **family** attribute.

- **NW\_IPPROTO\_IP**

  - **NW\_IPPROTO\_IPv6**

  - **NW\_IPPROTO\_ICMPv4**

  - **NW\_IPPROTO\_TCP**

  - **NW\_IPPROTO\_UDP**

  - **NW\_IPPROTO\_ICMPv6**

  Transport layer protocol constants, for use with **protocol** attribute.

- **NW\_IP\_HDRINCL**

  - **NW\_IPPROTO\_RAW**

  Mostly used internally.

## SEE ALSO

Net::Write::Layer2, Net::Write::Layer3, Net::Write::Layer4

## AUTHOR

Patrice \<GomoR\> Auffret

## COPYRIGHT AND LICENSE

Copyright (c) 2006-2015, Patrice \<GomoR\> Auffret

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.
