diff --git a/include/fileutils.h b/include/fileutils.h
index c2dcdc9..5116e22 100644
--- a/include/fileutils.h
+++ b/include/fileutils.h
@@ -1,23 +1,19 @@
 /*
  *  Copyright (C) 2004-2023 Savoir-faire Linux Inc.
  *
- *  Author: Rafaël Carré <rafael.carre@savoirfairelinux.com>
- *
- *  This program is free software; you can redistribute it and/or modify
+ *  This program is free software: you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
+ *  the Free Software Foundation, either version 3 of the License, or
  *  (at your option) any later version.
  *
  *  This program is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.
+ *  along with this program. If not, see <https://www.gnu.org/licenses/>.
  */
-
 #pragma once
 
 #include <string>
@@ -113,7 +109,7 @@
  * Remove a file with optional erasing of content.
  * Return the same value as std::remove().
  */
-//int remove(const std::string& path, bool erase = false);
+int remove(const std::string& path, bool erase = false);
 
 /**
  * Prune given directory's content and remove it, symlinks are not followed.
