# Copyright 2006 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License v2
# $Id$

# This file contains descriptions of VOICEMAIL_STORAGE USE_EXPAND flags.
# This is primarily used by net-misc/asterisk.

# Keep it sorted.
file - Uses plain files to store configuration & messages.
odbc - Uses ODBC to talk to a SQL database backend.
imap - Uses an IMAP server to store configuration & messages.
