New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

imap-server

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

imap-server

IMAP Server module for Nodejs

latest
Source
npmnpm
Version
0.0.1
Version published
Maintainers
1
Created
Source

imap-server

IMAP Server module for Nodejs

This project is inspired by Haraka a SMTP server for Nodejs. All features of an IMAP server are implemented as plugins, so it can adapt to many use cases.

Installation

npm install imap-server

Usage

var ImapServer = require('imap-server');
var server = ImapServer();

// use plugin
var plugins = require('imap-server/plugins');
server.use(plugins.announce);
/* use more builtin or custom plugins... */

var net = require('net');
net.createServer(server).listen(process.env.IMAP_PORT || 143);

Plugins

Built-in plugins

announce

Required by IMAP4rev1. This plugin also send the optional capability list.

starttls

Provide encrypted communication for IMAP via the STARTTLS command.

server.use(plugins.starttls, {
    /* mandatory hash of options for crypto.createCredentials
     * http://nodejs.org/api/crypto.html#crypto_crypto_createcredentials_details
     * with at least key & cert
     */
    key: Buffer,
    cert: Buffer
});

debug

This plugin log various information.

authentification helper

Here's how to implement auth plain without worrying about the underlying protocol:

var WrapAuthPlain = require('imap-server/util/auth_plain_wrapper');

exports.auth_plain = WrapAuthPlain(function(connection, username, password, next) {
    if(username == "john.doe@example.com" && password == "foobar") {
        next(null, 'OK');
    }
    else {
        next(null, 'NO');
    }
});

Notes

  • Default port : 143

  • SSL port : 993

  • rfc3501 (IMAP4rev1) : http://tools.ietf.org/html/rfc3501

  • return flags : OK, NO, BAD

  • getCapabilities ( connection ) Sync, return [cap, ...]

  • register

  • connection ( connection, next )

  • starttls ( next )

  • auth_* ( next )

  • unknown_command ( connection, line, next )

Keywords

imap

FAQs

Package last updated on 02 Jun 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts