Manual:Hooks/UploadVerifyUpload

Upload verification, based on both file properties like ​MIME type (same as UploadVerifyFile) and the information entered by the user ​(upload comment, file page contents etc.).

Details
​* $props: (array) File properties, as returned by FSFile::getPropsFromPath ​* $comment: (string) Upload log comment (also used as edit summary) ​* $pageText: (string) File description page text (only used for new uploads) ​* &$error: output: If the file upload should be prevented, set this to the reason in the form of array( messagename, param1, param2, ... ) or a MessageSpecifier instance (you might want to use ApiMessage to provide machine-readable details for the API).
 * $upload: (object) An instance of UploadBase, with all info about the upload
 * ​$user: (object) An instance of User, the user uploading this file