Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mailinabox
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
mailinabox
Commits
a80c076d
Commit
a80c076d
authored
Aug 11, 2014
by
jkaberg
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
safe apphroach, sid dosnt like special characters like %
parent
1621a294
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
327 additions
and
14 deletions
+327
-14
backend_caldav.php
conf/zpush/backend_caldav.php
+66
-0
backend_carddav.php
conf/zpush/backend_carddav.php
+108
-0
backend_combined.php
conf/zpush/backend_combined.php
+0
-0
backend_imap.php
conf/zpush/backend_imap.php
+145
-0
zpush.sh
setup/zpush.sh
+8
-14
No files found.
conf/zpush/backend_caldav.php
0 → 100644
View file @
a80c076d
<?php
/***********************************************
* File : config.php
* Project : Z-Push
* Descr : CalDAV backend configuration file
*
* Created : 27.11.2012
*
* Copyright 2007 - 2013 Zarafa Deutschland GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation with the following additional
* term according to sec. 7:
*
* According to sec. 7 of the GNU Affero General Public License, version 3,
* the terms of the AGPL are supplemented with the following terms:
*
* "Zarafa" is a registered trademark of Zarafa B.V.
* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
* The licensing of the Program under the AGPL does not imply a trademark license.
* Therefore any rights, title and interest in our trademarks remain entirely with us.
*
* However, if you propagate an unmodified version of the Program you are
* allowed to use the term "Z-Push" to indicate that you distribute the Program.
* Furthermore you may use our trademarks where it is necessary to indicate
* the intended purpose of a product or service provided you use it in accordance
* with honest practices in industrial or commercial matters.
* If you want to propagate modified versions of the Program under the name "Z-Push",
* you may only do so if you have a written permission by Zarafa Deutschland GmbH
* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
*
* 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Consult LICENSE file for details
************************************************/
// ************************
// BackendCalDAV settings
// ************************
// Server address
define
(
'CALDAV_SERVER'
,
'https://localhost'
);
// Port
define
(
'CALDAV_PORT'
,
'443'
);
// Path
define
(
'CALDAV_PATH'
,
'/remote.php/caldav/calendars/%u/'
);
// Personal CalDAV folder (calendar folder/principal)
define
(
'CALDAV_PERSONAL'
,
''
);
// If the CalDAV server supports the sync-collection operation
// DAViCal and SOGo support it
// Setting this to false will work with most servers, but it will be slower
define
(
'CALDAV_SUPPORTS_SYNC'
,
false
);
?>
\ No newline at end of file
conf/zpush/backend_carddav.php
0 → 100644
View file @
a80c076d
<?php
/***********************************************
* File : config.php
* Project : Z-Push
* Descr : CardDAV backend configuration file
*
* Created : 16.03.2013
*
* Copyright 2007 - 2013 Zarafa Deutschland GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation with the following additional
* term according to sec. 7:
*
* According to sec. 7 of the GNU Affero General Public License, version 3,
* the terms of the AGPL are supplemented with the following terms:
*
* "Zarafa" is a registered trademark of Zarafa B.V.
* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
* The licensing of the Program under the AGPL does not imply a trademark license.
* Therefore any rights, title and interest in our trademarks remain entirely with us.
*
* However, if you propagate an unmodified version of the Program you are
* allowed to use the term "Z-Push" to indicate that you distribute the Program.
* Furthermore you may use our trademarks where it is necessary to indicate
* the intended purpose of a product or service provided you use it in accordance
* with honest practices in industrial or commercial matters.
* If you want to propagate modified versions of the Program under the name "Z-Push",
* you may only do so if you have a written permission by Zarafa Deutschland GmbH
* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
*
* 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Consult LICENSE file for details
************************************************/
// ************************
// BackendCardDAV settings
// ************************
// Server protocol: http or https
define
(
'CARDDAV_PROTOCOL'
,
'https'
);
// Server name
define
(
'CARDDAV_SERVER'
,
'localhost'
);
// Server port
define
(
'CARDDAV_PORT'
,
'443'
);
// Server path to the addressbook, or the principal with the addressbooks
// If your user has more than 1 addressbook point it to the principal.
// Example: user test@domain.com will have 2 addressbooks
// http://localhost/caldav.php/test@domain.com/addresses/personal
// http://localhost/caldav.php/test@domain.com/addresses/work
// You set the CARDDAV_PATH to '/caldav.php/%u/addresses/' and personal and work will be autodiscovered
// %u: replaced with the username
// %d: replaced with the domain
// Add the trailing /
define
(
'CARDDAV_PATH'
,
'/remote.php/carddav/addressbooks/%u/'
);
// Server path to the default addressbook
// Mobile device will create new contacts here. It must be under CARDDAV_PATH
// %u: replaced with the username
// %d: replaced with the domain
// Add the trailing /
define
(
'CARDDAV_DEFAULT_PATH'
,
'/remote.php/carddav/addressbooks/%u/contacts/'
);
// Server path to the GAL addressbook. This addressbook is readonly and searchable by the user, but it will NOT be synced.
// If you don't want GAL, comment it
// %u: replaced with the username
// %d: replaced with the domain
// Add the trailing /
define
(
'CARDDAV_GAL_PATH'
,
'/caldav.php/%d/GAL/'
);
// Minimal length for the search pattern to do the real search.
define
(
'CARDDAV_GAL_MIN_LENGTH'
,
5
);
// Addressbook display name, the name showed in the mobile device
// %u: replaced with the username
// %d: replaced with the domain
define
(
'CARDDAV_CONTACTS_FOLDER_NAME'
,
'%u Addressbook'
);
// If the CardDAV server supports the sync-collection operation
// DAViCal supports it, but SabreDav, Owncloud, SOGo don't
// Setting this to false will work with most servers, but it will be slower: 1 petition for the href of vcards, and 1 petition for each vcard
define
(
'CARDDAV_SUPPORTS_SYNC'
,
false
);
// If the CardDAV server supports the FN attribute for searches
// DAViCal supports it, but SabreDav, Owncloud and SOGo don't
// Setting this to true will search by FN. If false will search by sn, givenName and email
// It's safe to leave it as false
define
(
'CARDDAV_SUPPORTS_FN_SEARCH'
,
false
);
// If your carddav server needs to use file extension to recover a vcard.
// Davical needs it
// SOGo official demo online needs it, but some SOGo installation don't need it, so test it
define
(
'CARDDAV_URL_VCARD_EXTENSION'
,
'.vcf'
);
\ No newline at end of file
conf/zpush
_
backend_combined.php
→
conf/zpush
/
backend_combined.php
View file @
a80c076d
File moved
conf/zpush/backend_imap.php
0 → 100644
View file @
a80c076d
<?php
/***********************************************
* File : config.php
* Project : Z-Push
* Descr : IMAP backend configuration file
*
* Created : 27.11.2012
*
* Copyright 2007 - 2013 Zarafa Deutschland GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation with the following additional
* term according to sec. 7:
*
* According to sec. 7 of the GNU Affero General Public License, version 3,
* the terms of the AGPL are supplemented with the following terms:
*
* "Zarafa" is a registered trademark of Zarafa B.V.
* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
* The licensing of the Program under the AGPL does not imply a trademark license.
* Therefore any rights, title and interest in our trademarks remain entirely with us.
*
* However, if you propagate an unmodified version of the Program you are
* allowed to use the term "Z-Push" to indicate that you distribute the Program.
* Furthermore you may use our trademarks where it is necessary to indicate
* the intended purpose of a product or service provided you use it in accordance
* with honest practices in industrial or commercial matters.
* If you want to propagate modified versions of the Program under the name "Z-Push",
* you may only do so if you have a written permission by Zarafa Deutschland GmbH
* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
*
* 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Consult LICENSE file for details
************************************************/
// ************************
// BackendIMAP settings
// ************************
// Defines the server to which we want to connect
define
(
'IMAP_SERVER'
,
'localhost'
);
// connecting to default port (143)
define
(
'IMAP_PORT'
,
993
);
// best cross-platform compatibility (see http://php.net/imap_open for options)
define
(
'IMAP_OPTIONS'
,
'/ssl/norsh/novalidate-cert'
);
// overwrite the "from" header with some value
// options:
// '' - do nothing, use the From header
// 'username' - the username will be set (usefull if your login is equal to your emailaddress)
// 'domain' - the value of the "domain" field is used
// 'sql' - the username will be the result of a sql query. REMEMBER TO INSTALL PHP-PDO AND PHP-DATABASE
// 'ldap' - the username will be the result of a ldap query. REMEMBER TO INSTALL PHP-LDAP!!
// '@mydomain.com' - the username is used and the given string will be appended
define
(
'IMAP_DEFAULTFROM'
,
''
);
// DSN: formatted PDO connection string
// mysql:host=xxx;port=xxx;dbname=xxx
// USER: username to DB
// PASSWORD: password to DB
// OPTIONS: array with options needed
// QUERY: query to execute
// FIELDS: columns in the query
// FROM: string that will be the from, replacing the column names with the values
define
(
'IMAP_FROM_SQL_DSN'
,
''
);
define
(
'IMAP_FROM_SQL_USER'
,
''
);
define
(
'IMAP_FROM_SQL_PASSWORD'
,
''
);
define
(
'IMAP_FROM_SQL_OPTIONS'
,
serialize
(
array
(
PDO
::
ATTR_PERSISTENT
=>
true
)));
define
(
'IMAP_FROM_SQL_QUERY'
,
"select first_name, last_name, mail_address from users where mail_address = '#username@#domain'"
);
define
(
'IMAP_FROM_SQL_FIELDS'
,
serialize
(
array
(
'first_name'
,
'last_name'
,
'mail_address'
)));
define
(
'IMAP_FROM_SQL_FROM'
,
'#first_name #last_name <#mail_address>'
);
// SERVER: ldap server
// SERVER_PORT: ldap port
// USER: dn to use for connecting
// PASSWORD: password
// QUERY: query to execute
// FIELDS: columns in the query
// FROM: string that will be the from, replacing the field names with the values
define
(
'IMAP_FROM_LDAP_SERVER'
,
'localhost'
);
define
(
'IMAP_FROM_LDAP_SERVER_PORT'
,
'389'
);
define
(
'IMAP_FROM_LDAP_USER'
,
'cn=zpush,ou=servers,dc=zpush,dc=org'
);
define
(
'IMAP_FROM_LDAP_PASSWORD'
,
'password'
);
define
(
'IMAP_FROM_LDAP_BASE'
,
'dc=zpush,dc=org'
);
define
(
'IMAP_FROM_LDAP_QUERY'
,
'(mail=#username@#domain)'
);
define
(
'IMAP_FROM_LDAP_FIELDS'
,
serialize
(
array
(
'givenname'
,
'sn'
,
'mail'
)));
define
(
'IMAP_FROM_LDAP_FROM'
,
'#givenname #sn <#mail>'
);
// copy outgoing mail to this folder. If not set z-push will try the default folders
define
(
'IMAP_SENTFOLDER'
,
''
);
// forward messages inline (default true - inlined)
define
(
'IMAP_INLINE_FORWARD'
,
true
);
// list of folders we want to exclude from sync. Names, or part of it, separated by |
// example: dovecot.sieve|archive|spam
define
(
'IMAP_EXCLUDED_FOLDERS'
,
''
);
// Method used for sending mail
// mail => mail() php function
// sendmail => sendmail executable
// smtp => direct connection against SMTP
define
(
'IMAP_SMTP_METHOD'
,
'mail'
);
global
$imap_smtp_params
;
// SMTP Parameters
// mail : no params
$imap_smtp_params
=
array
();
// sendmail
//$imap_smtp_params = array('sendmail_path' => '/usr/bin/sendmail', 'sendmail_args' => '-i');
// smtp
// "host" - The server to connect. Default is localhost.
// "port" - The port to connect. Default is 25.
// "auth" - Whether or not to use SMTP authentication. Default is FALSE.
// "username" - The username to use for SMTP authentication. "imap_username" for using the same username as the imap server
// "password" - The password to use for SMTP authentication. "imap_password" for using the same password as the imap server
// "localhost" - The value to give when sending EHLO or HELO. Default is localhost
// "timeout" - The SMTP connection timeout. Default is NULL (no timeout).
// "verp" - Whether to use VERP or not. Default is FALSE.
// "debug" - Whether to enable SMTP debug mode or not. Default is FALSE.
// "persist" - Indicates whether or not the SMTP connection should persist over multiple calls to the send() method.
// "pipelining" - Indicates whether or not the SMTP commands pipelining should be used.
//$imap_smtp_params = array('host' => 'localhost', 'port' => 25, 'auth' => false);
// If you want to use SSL with port 25 or port 465 you must preppend "ssl://" before the hostname or IP of your SMTP server
// IMPORTANT: To use SSL you must use PHP 5.1 or later, install openssl libs and use ssl:// within the host variable
//$imap_smtp_params = array('host' => 'ssl://localhost', 'port' => 465, 'auth' => true, 'username' => 'imap_username', 'password' => 'imap_password');
// If you are using IMAP_SMTP_METHOD = mail or sendmail and your sent messages are not correctly displayed you can change this to "\n".
// BUT, it doesn't with RFC 2822 and will break if using smp method
define
(
'MAIL_MIMEPART_CRLF'
,
"
\r\n
"
);
?>
\ No newline at end of file
setup/zpush.sh
View file @
a80c076d
...
...
@@ -35,25 +35,19 @@ sed -i "s/define('BACKEND_PROVIDER', .*/define('BACKEND_PROVIDER', 'BackendCombi
# Configure BACKEND
rm
-f
/usr/local/lib/z-push/backend/combined/config.php
cp
conf/zpush
_
backend_combined.php /usr/local/lib/z-push/backend/combined/config.php
cp
conf/zpush
/
backend_combined.php /usr/local/lib/z-push/backend/combined/config.php
# Configure IMAP. Tell is to connect to email via IMAP using SSL. Since we connect on
# localhost, the certificate won't match (it may be self-signed and invalid anyway)
# so don't check the cert.
sed
-i
"s/define('IMAP_SERVER', .*/define('IMAP_SERVER', 'localhost');/"
/usr/local/lib/z-push/backend/imap/config.php
sed
-i
"s/define('IMAP_PORT', .*/define('IMAP_PORT', 993);/"
/usr/local/lib/z-push/backend/imap/config.php
sed
-i
"s/define('IMAP_OPTIONS', .*/define('IMAP_OPTIONS', '
\/
ssl
\/
norsh
\/
novalidate-cert');/"
/usr/local/lib/z-push/backend/imap/config.php
# Configure IMAP
rm
-f
/usr/local/lib/z-push/backend/imap/config.php
cp
conf/zpush/backend_imap.php /usr/local/lib/z-push/backend/imap/config.php
# Configure CardDav
sed
-i
"s/define('CARDDAV_PROTOCOL', .*/define('CARDDAV_PROTOCOL', 'https');/"
/usr/local/lib/z-push/backend/carddav/config.php
sed
-i
"s/define('CARDDAV_SERVER', .*/define('CARDDAV_SERVER', 'localhost');/"
/usr/local/lib/z-push/backend/carddav/config.php
sed
-i
"s/define('CARDDAV_PORT', .*/define('CARDDAV_PORT', '443');/"
/usr/local/lib/z-push/backend/carddav/config.php
sed
-i
"s/define('CARDDAV_PATH', .*/define('CARDDAV_PATH', '/owncloud/remote.php/carddav/addressbooks/%u/');/"
/usr/local/lib/z-push/backend/carddav/config.php
rm
-f
/usr/local/lib/z-push/backend/carddav/config.php
cp
conf/zpush/backend_carddav.php /usr/local/lib/z-push/backend/carddav/config.php
# Configure CalDav
sed
-i
"s/define('CALDAV_SERVER', .*/define('CALDAV_SERVER', 'https://localhost');/"
/usr/local/lib/z-push/backend/caldav/config.php
sed
-i
"s/define('CALDAV_PORT', .*/define('CALDAV_PORT', '443');/"
/usr/local/lib/z-push/backend/caldav/config.php
sed
-i
"s/define('CALDAV_PATH', .*/define('CALDAV_PATH', '/owncloud/remote.php/caldav/calendars/%u/');/"
/usr/local/lib/z-push/backend/caldav/config.php
rm
-f
/usr/local/lib/z-push/backend/caldav/config.php
cp
conf/zpush/backend_caldav.php /usr/local/lib/z-push/backend/caldav/config.php
# Some directories it will use.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment