Index: config/main.inc.php.dist
===================================================================
--- config/main.inc.php.dist	(revision 751b22b41f960971b966341a386dbf1fd8e2629a)
+++ config/main.inc.php.dist	(revision d1851ba77b26683b3b3ada4e08127794519d3eb6)
@@ -183,4 +183,8 @@
 // Maximum number of recipients per message. Default: 0 (no limit)
 $rcmail_config['max_recipients'] = 0; 
+
+// Maximum allowednumber of members of an address group. Default: 0 (no limit)
+// If 'max_recipients' is set this value should be less or equal
+$rcmail_config['max_group_members'] = 0; 
 
 // add this user-agent to message headers when sending
Index: program/localization/de_CH/messages.inc
===================================================================
--- program/localization/de_CH/messages.inc	(revision a61bbb24aafec5718ca9bc985e7c596c5821f018)
+++ program/localization/de_CH/messages.inc	(revision d1851ba77b26683b3b3ada4e08127794519d3eb6)
@@ -110,4 +110,6 @@
 $messages['smtperror'] = 'SMTP Fehler: $msg';
 $messages['emailformaterror'] = 'UngÃŒltige E-Mail-Adresse: $email';
+$messages['toomanyrecipients'] = 'Zuviele EmpfÃ€nger angegeben. Reduzieren Sie die EmpfÃ€ngeradressen auf $max.';
+$messages['maxgroupmembersreached'] = 'Die Anzahl Adressen in dieser Gruppe ÃŒberschreitet das Maximum von $max';
 
 ?>
Index: program/localization/en_US/messages.inc
===================================================================
--- program/localization/en_US/messages.inc	(revision 751b22b41f960971b966341a386dbf1fd8e2629a)
+++ program/localization/en_US/messages.inc	(revision d1851ba77b26683b3b3ada4e08127794519d3eb6)
@@ -111,6 +111,7 @@
 $messages['smtprecipientserror'] = 'SMTP Error: Unable to parse recipients list';
 $messages['smtperror'] = 'SMTP Error: $msg';
-$messages['emailformaterror'] = 'Incorrect e-mail address: $email';
+$messages['emailformaterror'] = 'Invalid e-mail address: $email';
 $messages['toomanyrecipients'] = 'Too many recipients. Reduce the number of recipients to $max.';
+$messages['maxgroupmembersreached'] = 'The number of group members exceeds the maximum of $max';
 
 ?>
Index: program/steps/addressbook/groups.inc
===================================================================
--- program/steps/addressbook/groups.inc	(revision 65c8764b19d16ebdcd270f5c9bf0162e686c56bd)
+++ program/steps/addressbook/groups.inc	(revision d1851ba77b26683b3b3ada4e08127794519d3eb6)
@@ -32,5 +32,10 @@
     $plugin = $RCMAIL->plugins->exec_hook('group_addmembers', array('group_id' => $gid, 'ids' => $ids, 'source' => $source));
     
-    if (!$plugin['abort'] && $CONTACTS->add_to_group($gid, $plugin['ids']))
+    $CONTACTS->set_group($gid);
+    $num2add = count(explode(',', $plugin['ids']));
+    
+    if (!$plugin['abort'] && ($maxnum = $RCMAIL->config->get('max_group_members', 0)) && ($CONTACTS->count()->count + $num2add > $maxnum))
+      $OUTPUT->show_message('maxgroupmembersreached', 'warning', array('max' => $maxnum));
+    else if (!$plugin['abort'] && $CONTACTS->add_to_group($gid, $plugin['ids']))
       $OUTPUT->show_message('contactaddedtogroup');
     else if ($plugin['message'])
