diff --git a/util/lxbios/DISCLAIMER b/util/lxbios/DISCLAIMER
new file mode 100644
index 0000000..4dd5bdc
--- /dev/null
+++ b/util/lxbios/DISCLAIMER
@@ -0,0 +1,70 @@
+####################################################################
+# $Id: DISCLAIMER,v 1.1.1.1 2005/12/02 22:35:19 dsp_llnl Exp $
+####################################################################
+
+Copyright (C) 2002 The Regents of the University of California.
+Produced at the Lawrence Livermore National Laboratory.
+Written by David S. Peterson <dsp@llnl.gov>.
+UCRL-CODE-2003-012
+All rights reserved.
+
+This file is part of lxbios, a utility for reading/writing LinuxBIOS
+parameters and displaying information from the LinuxBIOS table.
+For details, see <http://www.llnl.gov/linux/lxbios/>.
+
+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) version 2, dated June 1991.
+
+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 terms and
+conditions of 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.,
+59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+This work was produced at the University of California, Lawrence Livermore
+National Laboratory (UC LLNL) under contract no. W-7405-ENG-48 (Contract 48)
+between the U.S. Department of Energy (DOE) and The Regents of the
+University of California (University) for the operation of UC LLNL.
+The rights of the Federal Government are reserved under Contract 48 subject
+to the restrictions agreed upon by the DOE and University as allowed under
+DOE Acquisition Letter 97-1.
+
+#############################################################################
+
+OUR NOTICE AND TERMS AND CONDITIONS OF THE GNU GENERAL PUBLIC LICENSE
+
+Our Preamble Notice
+-------------------
+
+A.  This notice is required to be provided under our contract with the U.S.
+    Department of Energy (DOE).  This work was produced at the University of
+    California, Lawrence Livermore National Laboratory under Contract No.
+    W-7405-ENG-48 with the DOE.
+
+B.  Neither the United States Government nor the University of California nor
+    any of their employees, makes any warranty, express or implied, or
+    assumes any liability or responsibility for the accuracy, completeness,
+    or usefulness of any information, apparatus, product, or process
+    disclosed, or represents that its use would not infringe privately-owned
+    rights.
+
+C.  Also, reference herein to any specific commercial products, process, or
+    services by trade name, trademark, manufacturer or otherwise does not
+    necessarily constitute or imply its endorsement, recommendation, or
+    favoring by the United States Government or the University of California.
+    The views and opinions of authors expressed herein do not necessarily
+    state or reflect those of the United States Government or the University
+    of California, and shall not be used for advertising or product
+    endorsement purposes.  The precise terms and conditions for copying,
+    distribution and modification follows.
+
+GNU Terms and Conditions for Copying, Distribution, and Modification
+--------------------------------------------------------------------
+
+The precise terms and conditions of the GNU General Public License
+(version 2, dated June 1991) are contained in the file COPYING which is
+included in this software distribution.
