WordPress at a glance
function is not described

validate_plugin() WP 2.5.0

Validate the plugin path.

Checks that the main plugin file exists and is a valid plugin. See validate_file().

No Hooks.

Return

WP_Error/Int. 0 on success, WP_Error on failure.

Usage

validate_plugin( $plugin );
$plugin(string) (required)
Path to the plugin file relative to the plugins directory.

Code of validate plugin: wp-admin/includes/plugin.php WP 5.2.2

<?php
function validate_plugin( $plugin ) {
	if ( validate_file( $plugin ) ) {
		return new WP_Error( 'plugin_invalid', __( 'Invalid plugin path.' ) );
	}
	if ( ! file_exists( WP_PLUGIN_DIR . '/' . $plugin ) ) {
		return new WP_Error( 'plugin_not_found', __( 'Plugin file does not exist.' ) );
	}

	$installed_plugins = get_plugins();
	if ( ! isset( $installed_plugins[ $plugin ] ) ) {
		return new WP_Error( 'no_plugin_header', __( 'The plugin does not have a valid header.' ) );
	}
	return 0;
}