tool_common_usage( void )
 {
        static const char *const descriptions[] = {
-N_("  -c         continuous operation mode (do not stop on errors)\n"),
 N_("  -d level   set LDAP debugging level to `level'\n"),
 N_("  -D binddn  bind DN\n"),
 N_("  -e [!]<ext>[=<extparam>] general extensions (! indicates criticality)\n")
 N_("             abandon, cancel, ignore (SIGINT sends abandon/cancel,\n"
    "             or ignores response; if critical, doesn't wait for SIGINT.\n"
    "             not really controls)\n")
-N_("  -f file    read operations from `file'\n"),
 N_("  -h host    LDAP server\n"),
 N_("  -H URI     LDAP Uniform Resource Identifier(s)\n"),
 N_("  -I         use SASL Interactive mode\n"),
-N_("  -M         enable Manage DSA IT control (-MM to make critical)\n"),
 N_("  -n         show what would be done but don't actually do it\n"),
 N_("  -N         do not use reverse DNS to canonicalize SASL host name\n"),
 N_("  -O props   SASL security properties\n"),
 N_("  -o <opt>[=<optparam] general options\n"),
 N_("             nettimeout=<timeout> (in seconds, or \"none\" or \"max\")\n"),
 N_("  -p port    port on LDAP server\n"),
-N_("  -P version protocol version (default: 3)\n"),
 N_("  -Q         use SASL Quiet mode\n"),
 N_("  -R realm   SASL realm\n"),
 N_("  -U authcid SASL authentication identity\n"),
 
        fprintf( stderr, _("Compare options:\n"));
        fprintf( stderr, _("  -E [!]<ext>[=<extparam>] compare extensions (! indicates criticality)\n"));
        fprintf( stderr, _("             !dontUseCopy                (Don't Use Copy)\n"));
+       fprintf( stderr, _("  -M         enable Manage DSA IT control (-MM to make critical)\n"));
+       fprintf( stderr, _("  -P version protocol version (default: 3)\n"));
        fprintf( stderr, _("  -z         Quiet mode,"
                " don't print anything, use return values\n"));
        tool_common_usage();
 
        fprintf( stderr, _("    dn: list of DNs to delete. If not given, it will be readed from stdin\n"));
        fprintf( stderr, _("        or from the file specified with \"-f file\".\n"));
        fprintf( stderr, _("Delete Options:\n"));
+       fprintf( stderr, _("  -c         continuous operation mode (do not stop on errors)\n"));
+       fprintf( stderr, _("  -f file    read operations from `file'\n"));
+       fprintf( stderr, _("  -M         enable Manage DSA IT control (-MM to make critical)\n"));
+       fprintf( stderr, _("  -P version protocol version (default: 3)\n"));
        fprintf( stderr, _("  -r         delete recursively\n"));
        tool_common_usage();
        exit( EXIT_FAILURE );
 
        fprintf( stderr, _("Add or modify options:\n"));
        fprintf( stderr, _("  -a         add values (%s)\n"),
                (ldapadd ? _("default") : _("default is to replace")));
+       fprintf( stderr, _("  -c         continuous operation mode (do not stop on errors)\n"));
        fprintf( stderr, _("  -E [!]ext=extparam        modify extensions"
                " (! indicate s criticality)\n"));
+       fprintf( stderr, _("  -f file    read operations from `file'\n"));
+       fprintf( stderr, _("  -M         enable Manage DSA IT control (-MM to make critical)\n"));
+       fprintf( stderr, _("  -P version protocol version (default: 3)\n"));
 #ifdef LDAP_X_TXN
        fprintf( stderr,
                _("             [!]txn=<commit|abort>         (transaction)\n"));
 
        fprintf( stderr, _("            If not given, the list of modifications is read from stdin or\n"));
        fprintf( stderr, _("            from the file specified by \"-f file\" (see man page).\n"));
        fprintf( stderr, _("Rename options:\n"));
+       fprintf( stderr, _("  -c         continuous operation mode (do not stop on errors)\n"));
+       fprintf( stderr, _("  -f file    read operations from `file'\n"));
+       fprintf( stderr, _("  -M         enable Manage DSA IT control (-MM to make critical)\n"));
+       fprintf( stderr, _("  -P version protocol version (default: 3)\n"));
        fprintf( stderr, _("  -r                 remove old RDN\n"));
        fprintf( stderr, _("  -s newsup  new superior entry\n"));
        tool_common_usage();
 
        fprintf( stderr, _("  -a deref   one of never (default), always, search, or find\n"));
        fprintf( stderr, _("  -A         retrieve attribute names only (no values)\n"));
        fprintf( stderr, _("  -b basedn  base dn for search\n"));
+       fprintf( stderr, _("  -c         continuous operation mode (do not stop on errors)\n"));
        fprintf( stderr, _("  -E [!]<ext>[=<extparam>] search extensions (! indicates criticality)\n"));
        fprintf( stderr, _("             [!]domainScope              (domain scope)\n"));
        fprintf( stderr, _("             !dontUseCopy                (Don't Use Copy)\n"));
        fprintf( stderr, _("             [!]deref=derefAttr:attr[,...][;derefAttr:attr[,...][;...]]\n"));
 #endif
        fprintf( stderr, _("             [!]<oid>=:<value>           (generic control; no response handling)\n"));
+       fprintf( stderr, _("  -f file    read operations from `file'\n"));
        fprintf( stderr, _("  -F prefix  URL prefix for files (default: %s)\n"), def_urlpre);
        fprintf( stderr, _("  -l limit   time limit (in seconds, or \"none\" or \"max\") for search\n"));
        fprintf( stderr, _("  -L         print responses in LDIFv1 format\n"));
        fprintf( stderr, _("  -LL        print responses in LDIF format without comments\n"));
        fprintf( stderr, _("  -LLL       print responses in LDIF format without comments\n"));
        fprintf( stderr, _("             and version\n"));
+       fprintf( stderr, _("  -M         enable Manage DSA IT control (-MM to make critical)\n"));
+       fprintf( stderr, _("  -P version protocol version (default: 3)\n"));
        fprintf( stderr, _("  -s scope   one of base, one, sub or children (search scope)\n"));
        fprintf( stderr, _("  -S attr    sort the results by attribute `attr'\n"));
        fprintf( stderr, _("  -t         write binary values to files in temporary directory\n"));