---
name: "Net::FTPServer::Handle"
section: "3pm"
platform: "linux"
package: "libnet-ftpserver-perl"
version: "1.120-1"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::FTPServer::Handle"
---

# Net::FTPServer::Handle(3pm)

A generic Net::FTPServer file or directory handle.

## NAME

Net::FTPServer::Handle - A generic Net::FTPServer file or directory handle.

## SYNOPSIS

```
  use Net::FTPServer::Handle;
```

## DESCRIPTION

## METHODS

- $handle = Net::FTPServer::Handle-\>new ($ftps);

  Create a new handle. You would normally call this from a derived class.

- $rv = $handle-\>equals ($other\_handle);

  Decide if two handles refer to the same thing (file or directory).

- ($mode, $perms, `$nlink`, `$user`, `$group`, `$size`, `$time`) = `$handle->status;`

  Return the file or directory status. The fields returned are:

  ```
    $mode     Mode        'd' = directory,
                          'f' = file,
                          and others as with
                          the find(1) -type option.
    $perms    Permissions Permissions in normal octal numeric format.
    $nlink    Link count
    $user     Username    In printable format.
    $group    Group name  In printable format.
    $size     Size        File size in bytes.
    $time     Time        Time (usually mtime) in Unix time_t format.
  ```

  In derived classes, some of this status information may well be synthesized, since virtual filesystems will often not contain information in a Unix-like format.

- $name = $handle-\>pathname;

  Return the full path of this file or directory. The path consists of all components separated by "/" characters.

  If the object is a directory, then the pathname will have a "/" character at the end.

- $name = $handle-\>filename;

  Return the filename part of the path. If the file is a directory, then this function returns "".

- $name = $handle-\>dirname;

  Return the directory name part of the path. The directory name always has a trailing "/" character.

- $rv = $handle-\>move ($dirh, `$filename);`

  Move the current file (or directory) into directory `$dirh` and call it `$filename`. If the operation is successful, return 0, else return -1.

  Underlying filesystems may impose limitations on moves: for example, it may not be possible to move a directory; it may not be possible to move a file to another directory; it may not be possible to move a file across filesystems.

- $rv = $handle-\>delete;

  Delete the current file or directory. If the delete command was successful, then return 0, else if there was an error return -1.

  Different underlying file systems may impose restrictions on this command: for example, it may not be possible to delete directories, or only if they are empty.

  This is a virtual function which is actually implemented in one of the subclasses.

## AUTHORS

Richard Jones (rich@annexia.org).

## COPYRIGHT

Copyright (C) 2000 Biblio@Tech Ltd., Unit 2-3, 50 Carnwath Road, London, SW6 3EG, UK

## SEE ALSO

*Net::FTPServer*(3), [*perl*(1)](/perl/1.md)
