commands.c 2.57 KB
/* GNU mailutils - a suite of utilities for electronic mail
   Copyright (C) 1999, 2001 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */

#include "imap4d.h"

struct imap4d_command imap4d_command_table [] =
{
  { "CAPABILITY", imap4d_capability, STATE_ALL, STATE_NONE, STATE_NONE },
  { "NOOP", imap4d_noop, STATE_ALL, STATE_NONE, STATE_NONE },
  { "LOGOUT", imap4d_logout, STATE_ALL, STATE_LOGOUT, STATE_NONE },
  { "AUTHENTICATE", imap4d_authenticate, STATE_NONAUTH, STATE_NONE, STATE_AUTH },
  { "LOGIN", imap4d_login, STATE_NONAUTH, STATE_NONE, STATE_AUTH },
  { "SELECT", imap4d_select, STATE_AUTH | STATE_SEL, STATE_AUTH, STATE_SEL },
  { "EXAMINE", imap4d_examine, STATE_AUTH | STATE_SEL, STATE_AUTH, STATE_SEL },
  { "CREATE", imap4d_create, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "DELETE", imap4d_delete, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "RENAME", imap4d_rename, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "SUBSCRIBE", imap4d_subscribe, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "UNSUBSCRIBE", imap4d_unsubscribe, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "LIST", imap4d_list, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "LSUB", imap4d_lsub, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "STATUS", imap4d_status, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "APPEND", imap4d_append, STATE_AUTH | STATE_SEL, STATE_NONE, STATE_NONE },
  { "CHECK", imap4d_check, STATE_SEL, STATE_NONE, STATE_NONE },
  { "CLOSE", imap4d_close, STATE_SEL, STATE_AUTH, STATE_AUTH },
  { "EXPUNGE", imap4d_expunge, STATE_SEL, STATE_NONE, STATE_NONE },
  { "SEARCH", imap4d_search, STATE_SEL, STATE_NONE, STATE_NONE },
  { "FETCH", imap4d_fetch, STATE_SEL, STATE_NONE, STATE_NONE },
  { "STORE", imap4d_store, STATE_SEL, STATE_NONE, STATE_NONE },
  { "COPY", imap4d_copy, STATE_SEL, STATE_NONE, STATE_NONE },
  { "UID", imap4d_uid, STATE_SEL, STATE_NONE, STATE_NONE },
  { 0, 0, 0}
};