159 lines
4.0 KiB
PHP
159 lines
4.0 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Settings - syslog
|
|
*
|
|
* @package wp-fail2ban
|
|
* @since 4.0.0
|
|
*/
|
|
namespace org\lecklider\charles\wordpress\wp_fail2ban;
|
|
|
|
if ( !defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
/**
|
|
* Tab: Syslog
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
class TabSyslog extends Tab
|
|
{
|
|
/**
|
|
* {@inheritDoc}
|
|
*/
|
|
public function __construct()
|
|
{
|
|
add_action( 'admin_init', [ $this, 'admin_init' ], 100 );
|
|
parent::__construct( 'syslog', '<tt>syslog</tt>' );
|
|
}
|
|
|
|
/**
|
|
* {@inheritDoc}
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function admin_init()
|
|
{
|
|
// phpcs:disable Generic.Functions.FunctionCallArgumentSpacing
|
|
add_settings_section(
|
|
'wp-fail2ban-connection',
|
|
__( 'Connection' ),
|
|
[ $this, 'sectionConnection' ],
|
|
'wp-fail2ban-syslog'
|
|
);
|
|
add_settings_field(
|
|
'logging-connection',
|
|
parent::doc_link( 'WP_FAIL2BAN_OPENLOG_OPTIONS', __( 'Options' ) ),
|
|
[ $this, 'connection' ],
|
|
'wp-fail2ban-syslog',
|
|
'wp-fail2ban-connection'
|
|
);
|
|
add_settings_section(
|
|
'wp-fail2ban-workarounds',
|
|
__( 'Workarounds' ),
|
|
[ $this, 'sectionWorkarounds' ],
|
|
'wp-fail2ban-syslog'
|
|
);
|
|
add_settings_field(
|
|
'logging-workarounds',
|
|
parent::doc_link( '../syslog', __( 'Options' ) ),
|
|
[ $this, 'workarounds' ],
|
|
'wp-fail2ban-syslog',
|
|
'wp-fail2ban-workarounds'
|
|
);
|
|
// phpcs:enable
|
|
}
|
|
|
|
/**
|
|
* {@inheritDoc}
|
|
*
|
|
* @since 4.0.0
|
|
*
|
|
* @param array $settings {@inheritDoc}
|
|
* @param array $input {@inheritDoc}
|
|
*
|
|
* @return array {@inheritDoc}
|
|
*/
|
|
public function sanitize( array $settings, array $input = null )
|
|
{
|
|
return $settings;
|
|
}
|
|
|
|
/**
|
|
* Connection section blurb.
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function sectionConnection()
|
|
{
|
|
echo '' ;
|
|
}
|
|
|
|
/**
|
|
* Connection.
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function connection()
|
|
{
|
|
$class = '';
|
|
$fmt = <<<___STR___
|
|
<fieldset>
|
|
<label><input type="checkbox" disabled="disabled" %s> <code>LOG_CONS</code></label><br>
|
|
<label><input type="checkbox" disabled="disabled" %s> <code>LOG_PERROR</code></label><br>
|
|
<label><input type="checkbox" disabled="disabled" %s> <code>LOG_PID</code> <em>(%s)</em></label><br>
|
|
<label><input type="radio" disabled="disabled" %s> <code>LOG_NDELAY</code> <em>(%s)</em></label><br>
|
|
<label><input type="radio" disabled="disabled" %s> <code>LOG_ODELAY</code></label>
|
|
</fieldset>
|
|
___STR___;
|
|
printf(
|
|
$fmt,
|
|
checked( WP_FAIL2BAN_OPENLOG_OPTIONS & LOG_CONS, LOG_CONS, false ),
|
|
checked( WP_FAIL2BAN_OPENLOG_OPTIONS & LOG_PERROR, LOG_PERROR, false ),
|
|
checked( WP_FAIL2BAN_OPENLOG_OPTIONS & LOG_PID, LOG_PID, false ),
|
|
__( 'default' ),
|
|
checked( WP_FAIL2BAN_OPENLOG_OPTIONS & LOG_NDELAY, LOG_NDELAY, false ),
|
|
__( 'default' ),
|
|
checked( WP_FAIL2BAN_OPENLOG_OPTIONS & LOG_ODELAY, LOG_ODELAY, false )
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Workarounds section blurb.
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function sectionWorkarounds()
|
|
{
|
|
echo '' ;
|
|
}
|
|
|
|
/**
|
|
* Workarounds.
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function workarounds()
|
|
{
|
|
$fmt = <<<___STR___
|
|
<fieldset>
|
|
<label><input type="checkbox" disabled="disabled" %s> %s</label>
|
|
<br>
|
|
<label><input type="checkbox" disabled="disabled" %s> %s</label>
|
|
<br>
|
|
<label><input type="checkbox" disabled="disabled" %s> %s</label>
|
|
</fieldset>
|
|
___STR___;
|
|
printf(
|
|
$fmt,
|
|
checked( @WP_FAIL2BAN_SYSLOG_SHORT_TAG, true, false ),
|
|
__( 'Short Tag' ),
|
|
checked( @WP_FAIL2BAN_HTTP_HOST, true, false ),
|
|
__( 'Specify Host' ),
|
|
checked( @WP_FAIL2BAN_TRUNCATE_HOST, true, false ),
|
|
__( 'Truncate Host' )
|
|
);
|
|
}
|
|
|
|
}
|
|
new TabSyslog(); |