]> code.delx.au - refind/commitdiff
Cleanup for better tracking of copyrights and licenses.
authorsrs5694 <srs5694@users.sourceforge.net>
Tue, 20 Oct 2015 19:59:36 +0000 (15:59 -0400)
committersrs5694 <srs5694@users.sourceforge.net>
Tue, 20 Oct 2015 19:59:36 +0000 (15:59 -0400)
32 files changed:
CREDITS.txt
EfiLib/gnuefi-helper.c
EfiLib/gnuefi-helper.h
debian/control
debian/copyright
filesystems/crc32c.c
filesystems/fsw_ntfs.c
filesystems/scandisk.c
icons/func_exit.png
icons/func_firmware.png
icons/tool_memtest.png
icons/tool_mok_tool.png
icons/tool_netboot.png
icons/tool_part.png
icons/vol_net.png
icons/vol_optical.png
libeg/image.c
libeg/lodepng_xtra.c
libeg/screen.c
mok/COPYING
refind/Make.tiano
refind/Makefile
refind/config.c
refind/gpt.c
refind/legacy.c
refind/lib.c
refind/line_edit.c [new file with mode: 0644]
refind/line_edit.h [new file with mode: 0644]
refind/main.c
refind/menu.c
refind/screen.c
refind/screen.h

index 887e8924197d81a179d4365702a4bf4f55c1ff58..53011addc07a3d299c4f0d4e04fa6c1dd9d017c5 100644 (file)
@@ -75,21 +75,21 @@ Icons and graphics:
 -------------------
 
 * I replaced many of the original rEFIt icons with icons taken from the
-  Oxygen Icons project, either from the Oxygen Refit package on its page
-  (http://deviantdark.deviantart.com/art/Oxygen-Refit-70199755) or from the
-  oxygen-icons version 4.7.4 package on my Gentoo Linux development system.
-  These icons are released under the LGPLv3 or GPLv3. If I'm reading the
-  pages correctly, the original creator was David Vignoni (aka
-  "deviantdark" on the deviantart site).
+  Oxygen Icons project, originally from the Oxygen Refit package on its
+  page (http://deviantdark.deviantart.com/art/Oxygen-Refit-70199755) or
+  from the oxygen-icons version 4.7.4 package on my Gentoo Linux
+  development system. As of version 0.9.3, I refreshed these icons with
+  versions from Ubuntu's oxygen-icon-theme 4.13.0-0ubuntu1 package. These
+  icons are released under the GPLv3. If I'm reading the pages correctly,
+  the original creator was David Vignoni (aka "deviantdark" on the
+  deviantart site).
 
 * Erik Kemperman provided the rEFInd icon, which is a combination of
   the common refresh/reload icon and the search/find icon.
 
-* The keys icon for MOK keys management comes from the
-  kdeartwork-iconthemes-4.8.5 package on Gentoo.
-
-* The memtest icon (tool_memtest.icns) was originally memory.png from
-  the Gentoo kdeartwork-iconthemes-4.10.5 icons package.
+* The memtest icon (tool_memtest.icns) was originally memory.png from the
+  Gentoo kdeartwork-iconthemes-4.10.5 icons package, and was subsequently
+  updated from the Ubuntu kdeartwork 4:15.08.1-0ubuntu1 package.
 
 * The gummiboot icon is taken from the gummiboot Web page
   (http://freedesktop.org/wiki/Software/gummiboot) and scaled down
index 2c344b16e3e0bd8e8e4bdc823399a4413d52c6d4..d4f269df918dfb2e7f32d9ae33938e4b0c7dd2e4 100644 (file)
@@ -2,11 +2,16 @@
  * EfiLib/gnuefi-helper.c
  * GNU-EFI support functions
  *
- * Copyright (c) 2014 Roderick W. Smith
- * With extensive borrowing from other sources (mostly Tianocore)
+ * Borrowed from the TianoCore EDK II, with modifications by Rod Smith
  *
- * This software is licensed under the terms of the GNU GPLv3,
- * a copy of which should come with this file.
+ * Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
+ * This program and the accompanying materials
+ * are licensed and made available under the terms and conditions of the BSD License
+ * which accompanies this distribution.  The full text of the license may be found at
+ * http://opensource.org/licenses/bsd-license.php
+ * 
+ * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
  *
  */
 
@@ -307,4 +312,4 @@ GetNextDevicePathInstance (
   }
 
   return ReturnValue;
-}
\ No newline at end of file
+}
index 2a2fe0761abe07c71df177d6da9d5e68f6a90bc2..694988a675ba8bd2b838e52793ac5752c9f370e8 100644 (file)
@@ -1,12 +1,17 @@
 /*
- * EfiLib/gnuefi.h
+ * EfiLib/gnuefi-helper.h
  * Header file for GNU-EFI support in legacy boot code
  *
- * Copyright (c) 2014 Roderick W. Smith
- * With extensive borrowing from other sources (mostly Tianocore)
+ * Borrowed from the TianoCore EDK II, with modifications by Rod Smith
  *
- * This software is licensed under the terms of the GNU GPLv3,
- * a copy of which should come with this file.
+ * Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
+ * This program and the accompanying materials
+ * are licensed and made available under the terms and conditions of the BSD License
+ * which accompanies this distribution.  The full text of the license may be found at
+ * http://opensource.org/licenses/bsd-license.php
+ * 
+ * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
  *
  */
 /*
index 344ebdb443fad5f86896b3803b9b33cba69952ec..782083807e53c0d9cd2588b1ba1e4952103a8e32 100644 (file)
@@ -6,7 +6,7 @@ Standards-Version: 3.9.5
 Build-Depends: debhelper (>= 9), gnu-efi
 
 Package: refind
-Architecture: any
+Architecture: i386, amd64
 Depends: ${misc:Depends}, efibootmgr, openssl, sbsigntool, util-linux, parted
 Description: boot manager for EFI-based computers
  A graphical boot manager for EFI- and UEFI-based computers, such as all
index 1ceeff42586945f64cb5b5b5af896ef984105f15..a8c0f3623c82883c2061a8dbfd2640b909873822 100644 (file)
@@ -25,10 +25,195 @@ Upstream Authors:
     Apple, Inc.
 
 Copyright:
-    Copyright 2012 Roderick W. Smith
-    Copyright 2006 Christoph Pfisterer
 
-License:
+This package builds two EFI application programs and several drivers.
+Documentation and icons are also included.
+
+* The main rEFInd binary (refind_x64.efi or refind_ia32.efi) uses source
+  code with various licenses, all of which are compatible with the GPL-3,
+  which is the overarching license.
+* The gptsync binary uses source files that all use the BSD 2-clause
+  license.
+* Drivers all rely on a BSD 2-clause base. Beyond that, things diverge:
+  * The HFS+ and ISO-9660 drivers use GPL-2 source files
+  * The Btrfs driver uses GPL-2+ and GPL-3+ source files
+  * The ext2fs, ext4fs, ReiserFS, and NTFS drivers all use GPL-2+
+    source files.
+* The documentation is licensed under the FDL 1.3
+
+File-by-file details are described below.
+
+Files Used to Create Main rEFInd Binary
+---------------------------------------
+
+Files: refind/*
+       libeg/image.c
+       libeg/screen.c
+Copyright: 2006-2010 Christoph Pfisterer
+           2012-2015 Roderick W. Smith
+License: BSD 3-clause & GPL-3+
+
+Files: refind/icns.c
+       libeg/*
+Copyright: 2006-2007 Christoph Pfisterer
+License BSD 3-clause
+
+Files: refind/gpt.[ch]
+       libeg/lodepng_xtra.c
+Copyright: 2014-2015 Roderick W. Smith
+License: GPL-3+
+
+Files: refind/crc32.[ch]
+Copyright: 1986 Gary S. Brown
+License: "You may use this program, or code or tables extracted from it, as
+          desired without restriction."
+
+Files: refind/driver_support.[ch]
+Copyright: 2006-2011 Intel Corporation
+License: BSD 2-clause
+
+Files: refind/line_edit.[ch]
+Copyright: 2012 Harald Hoyer <harald@redhat.com>
+           2012-2013 Kay Sievers <kay@vrfy.org>
+License: LGPL-2.1+
+
+Files: EfiLib/*
+Copyright: 2004-2011 Intel Corp.
+License: BSD 2-clause
+
+Files: libeg/lodepng.c
+Copyright: 2005-2013 Lode Vandevenne
+License: zlib
+
+Files: mok/*
+Copyright: 2012 James Bottomley
+License: LGPL-2.1
+
+Files: mok/mok.[ch]
+Copyright: 2012 Red Hat, Inc. <mjg@redhat.com>
+           2009-2012 Intel Corporation
+License: BSD 2-clause
+
+Files: include/*
+Copyright: 2006-2010 Intel Corporation
+License: BSD 2-clause
+
+Files: include/syslinux_mbr.h
+Copyright: 2003-2004 H. Peter Anvin
+License: Expat
+
+Files: include/RemovableMedia.h
+Copyright: 2005 Apple Computer, Inc.
+License: See comments in file
+
+Files Used to Create gptsync Binary
+-----------------------------------
+
+Files: gptsync/*
+Copyright: 2006 Christoph Pfisterer
+License: BSD 2-clause
+
+Files: gptsync/gptsync.c
+Copyright: 2006 Christoph Pfisterer
+           2013 Roderick W. Smith
+License: BSD 2-clause
+
+Base Filesystem Driver Files
+----------------------------
+
+Files: filesystems/fsw_core.[ch]
+       filesystems/fsw_efi.[ch]
+       filesystems/fsw_efi_lib.c
+       filesystems/fsw_efi_base.h
+       filesystems/fsw_lib.c
+Copyright: 2006 Christoph Pfisterer
+License: BSD 3-clause
+
+Files: filesystems/fsw_efi_edk2_base.h
+Copyright: 2012 Stefan Agner
+License BSD 3-clause
+
+Files Used by ext2fs, ext4fs, ReiserFS, NTFS Filesystem Drivers
+(Used in addition to Base Filesystem Driver Files)
+---------------------------------------------------------------
+
+Files: filesystems/fsw_ext2.[ch]
+       filesystems/fsw_ext2_disk.h
+       filesystems/fsw_reiserfs.[ch]
+       filesystems/fsw_reiserfs_disk.h
+Copyright: 2006 Christoph Pfisterer
+License: GPL-2+
+
+Files: filesystems/fsw_ext4.c
+Copyright: 2012 Stefan Agner
+License: GPL-2+
+
+Files: filesystems/fsw_ext4.h
+Copyright: 2006 Christoph Pfisterer
+           2012 Stefan Agner
+License: GPL-2+
+
+Files: filesystems/fsw_ext4_disk.h
+Copyright: 2006 Christoph Pfisterer
+           2012 Stefan Agner
+           1991-2012 by various Linux kernel contributors
+License: GPL-2+
+
+Files: filesystems/fsw_ntfs.c
+Copyright: Samuel Liao
+License: GPL-2+
+
+Files Used by Btrfs Filesystem Driver
+(Used in addition to Base Filesystem Driver Files)
+--------------------------------------------------
+
+Files: filesystems/crc32c.c
+       filesystems/gzio.c
+Copyright: 2008 Free Software Foundation, Inc.
+License: GPL-3+
+
+Files: filesystems/fsw_btrfs.c
+Copyright: 2010 Free Software Foundation, Inc.
+           2013 Tencent, Inc. (Samuel Liao)
+License: GPL-3+
+
+Files: filesystems/minilzo.[ch]
+Copyright: 1996-2011 Markus Franz Xaver Johannes Oberhumer
+License: GPL-2+
+
+Files: filesystems/scandisk.c
+Copyright: 2013 Tencent, Inc. (Samuel Liao)
+License: GPL-3+
+
+Files Used by HFS+ & ISO-9660 Filesystem Drivers
+(Used in addition to Base Filesystem Driver Files)
+--------------------------------------------------
+
+Files: filesystems/fsw_hfs.[ch]
+Copyright: 2010 Oracle Corporation
+License: GPL-2
+
+Files: filesystems/fsw_iso9660.[ch]
+Copyright: 2006 Christoph Pfisterer
+           2010 Oracle Corporation
+License: BSD 3-clause & GPL-2
+
+Files Used to Build iPXE (not built by default)
+-----------------------------------------------
+
+Files: net/*
+Copyright: 2009 Michael Brown
+License: GPL-2+
+
+Documentation
+-------------
+
+Files: docs/*
+Copyright: 2012-2015 Roderick W. Smith
+License: FDL 1.3
+
+
+License: GPL-3
 
     This package is free software: you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 343fd210ec39c7b4555215a31f211e1262d0673e..ec10d257f9b76925250c223076a3d92264c52d43 100644 (file)
@@ -2,6 +2,23 @@
  * this file take from grub 2.0
  * for btrfs UEFI driver
  */
+/*
+ *  GRUB  --  GRand Unified Bootloader
+ *  Copyright (C) 2008  Free Software Foundation, Inc.
+ *
+ *  GRUB 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
+ *  (at your option) any later version.
+ *
+ *  GRUB 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
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
+ */
 
 static uint32_t crc32c_table [256];
 
index 86db271ac2f22a220ad86158591edd5e23582504..2fda530e639e2d6fac13725d776048316ab6e360 100644 (file)
@@ -1,7 +1,7 @@
 /**
  * \file fsw_ntfs.c
  * ntfs file system driver code.
- * by Samuel Liao
+ * Copyright (C) 2015 by Samuel Liao
  */
 
 /*-
index 6ae5cf8f14326872aae4186ed99aac964a226688..d8b862a895040d506063624483da4b4cd6f0abe9 100644 (file)
@@ -5,6 +5,21 @@
  *
  * Copyright (c) 2013 Tencent, Inc.
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
+
 #include "fsw_efi.h"
 #ifdef __MAKEWITH_GNUEFI
 #include "edk2/DriverBinding.h"
index 2038cfcec423771ded786d1ec6fdb301106cf7bd..9ae1f1fb363260308b2c8bcaa0b215654e3ef1d5 100644 (file)
Binary files a/icons/func_exit.png and b/icons/func_exit.png differ
index f4180822ad9730db878159367f9631508fec0b6e..4ac82cec47b7fd81dc5b5cc5c7cabe6d8bc73119 100644 (file)
Binary files a/icons/func_firmware.png and b/icons/func_firmware.png differ
index c85bf9e3c4aee056f5915d7974e2e90e45d274d3..d1f80ea1a01c37e41737b600bfb2a06a242c3fc4 100644 (file)
Binary files a/icons/tool_memtest.png and b/icons/tool_memtest.png differ
index 976ed776694e876a08cbc424fad1bba5913ff102..fbb1dfc2e13496eebb0c95595b54e775878f1d5e 100644 (file)
Binary files a/icons/tool_mok_tool.png and b/icons/tool_mok_tool.png differ
index a5070efdbaaad522e83a474c136a7655e3d00228..3df117a3c764cd8f96a87db14341dcd0bc91e4d3 100644 (file)
Binary files a/icons/tool_netboot.png and b/icons/tool_netboot.png differ
index c4ade3b26082a1f6296f95470924287ef8698899..71ec7916b4f1ad07286584bca53454d560004075 100644 (file)
Binary files a/icons/tool_part.png and b/icons/tool_part.png differ
index 614d53cf368003ae7e58cd2c2937930d86acf436..a9a9d2e9729d71bf9eccbdee4810f12a280f4ca9 100644 (file)
Binary files a/icons/vol_net.png and b/icons/vol_net.png differ
index 05507eae583f8fe9dfc3d057462bf5f18462360d..6b533afaee3a79befeab6324a7b949227bee0e24 100644 (file)
Binary files a/icons/vol_optical.png and b/icons/vol_optical.png differ
index 614d312d226ee4bdf4bd64df5e513eefb8b51071..124c997b454b47a0a1ae63e6266de1f344f49239 100644 (file)
  */
 /*
  * Modifications copyright (c) 2012-2015 Roderick W. Smith
- * 
+ *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
- * 
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
+ *
+ */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
  */
 
 #include "libegint.h"
index 2116012c4508ed090800e738fb358ac110863332..343fbffc1c67501efecee5bb4622370b44658fb0 100644 (file)
@@ -2,11 +2,26 @@
  * Additional functions to support LodePNG for use in rEFInd
  *
  * copyright (c) 2013 by by Roderick W. Smith, and distributed
- * under the terms of the GNU GPL v3.
+ * under the terms of the GNU GPL v3, or (at your option) any
+ * later version.
  *
  * See http://lodev.org/lodepng/ for the original LodePNG.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "global.h"
 #include "../refind/screen.h"
@@ -110,4 +125,4 @@ EG_IMAGE * egDecodePNG(IN UINT8 *FileData, IN UINTN FileDataLength, IN UINTN Ico
    lodepng_free(PixelData);
 
    return NewImage;
-} // EG_IMAGE * egDecodePNG()
\ No newline at end of file
+} // EG_IMAGE * egDecodePNG()
index cdf150655a0a02443e9192d97f6369585ff23609..61df93b6ef3baf477e700288b6c77ab342c3699c 100644 (file)
  * Modifications copyright (c) 2012-2014 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "libegint.h"
 #include "../refind/screen.h"
index 804e58922775a44ba7efa3020be14df0a865ffa4..e2aa3e64c6d983b9a80e8f7bf45fa6251e0cb84c 100644 (file)
@@ -1,7 +1,9 @@
 Below file was part of the efitools package by James Bottomley, from which
-most of the source files in this directory were taken. The mok.c and mok.h
-files, however, are based on Matthew J. Garrett's shim program; see the
-copyright notices in those files for details....
+most of the source files in this directory were taken. The files in this
+directory originated in the "lib" directory of the efitools package, and so
+fall under the LGPLv2.1. The mok.c and mok.h files, however, are based on
+Matthew J. Garrett's shim program; see the copyright notices in those files
+for details....
 
 ------------------------------------------------------------------------
 
index f8f60ffe8e809d6fbd917cbe0f34f04c6b26d187..4cc17834b2712cba8739c7e56aa4519d7b48c3fa 100644 (file)
@@ -35,7 +35,7 @@ ALL_EFILIBS     = $(EFILIB)/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevel
 #                /usr/local/UDK2010/MyWorkSpace/Build/MdeModule/RELEASE_GCC46/X64/MdeModulePkg/Core/Dxe/DxeMain/OUTPUT/DxeMain/DxeMain.obj
 
 
-SOURCE_NAMES     = config driver_support icns lib main menu screen gpt crc32 legacy AutoGen
+SOURCE_NAMES     = config line_edit driver_support icns lib main menu screen gpt crc32 legacy AutoGen
 OBJS             = $(SOURCE_NAMES:=.obj)
 
 all: $(BUILDME)
index 402e33d5670d6b85b889d3efc8505b225c74af0e..fe5c247d469c23992f3c835b1b0eb84d289ff453 100644 (file)
@@ -25,8 +25,8 @@ LOCAL_CPPFLAGS  = -I$(SRCDIR) -I$(SRCDIR)/../include -I$(SRCDIR)/../libeg -I$(SR
 LOCAL_LDFLAGS   = -L$(SRCDIR)/../libeg/ -L$(SRCDIR)/../mok/ -L$(SRCDIR)/../EfiLib/
 LOCAL_LIBS      = -leg -lmok -lEfiLib
 
-OBJS            = main.o config.o menu.o screen.o icns.o gpt.o crc32.o lib.o driver_support.o legacy.o
-#OBJS            = main.o config.o menu.o screen.o icns.o lib.o mok.o driver_support.o variables.o sha256.o pecoff.o simple_file.o security_policy.o guid.o
+OBJS            = main.o line_edit.o config.o menu.o screen.o icns.o gpt.o crc32.o lib.o driver_support.o legacy.o
+#OBJS            = main.o line_edit.o config.o menu.o screen.o icns.o lib.o mok.o driver_support.o variables.o sha256.o pecoff.o simple_file.o security_policy.o guid.o
 
 all: $(TARGET)
 
index afededb87fb463608b804633f91dfd08f2c5f995..194dcb8c21baa7c11848bc824b0facc20b056a56 100644 (file)
  * Modifications copyright (c) 2012-2015 Roderick W. Smith
  * 
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3) or (at your option) any later version.
  * 
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+*/
 
 #include "global.h"
 #include "lib.h"
index cc6c70b77c7fbb153413ca066211d78ecc7b7e5b..6ce2ba0fe9e0d3a87382822a53abe64313739c83 100644 (file)
@@ -5,11 +5,19 @@
  * Copyright (c) 2014-2015 Roderick W. Smith
  * All rights reserved.
  *
- * This program is distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+*/
 
 #include "gpt.h"
 #include "lib.h"
index 10dfc5e2fc09d9bba94c8acfc7ac56eb6312d0f7..3f1ccc705feda8aa6edb4e0e7092c4cd9a626345 100644 (file)
  * Modifications copyright (c) 2012-2015 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+*/
 
 #include "global.h"
 #include "icns.h"
index 961e89ddd447e98c5c3d139ce07b87ce7dad0b07..33af394547a42468f423c0d66685217c71151f62 100644 (file)
  * Modifications copyright (c) 2012-2015 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "global.h"
 #include "lib.h"
diff --git a/refind/line_edit.c b/refind/line_edit.c
new file mode 100644 (file)
index 0000000..8bb9fb4
--- /dev/null
@@ -0,0 +1,217 @@
+// Line-editing functions borrowed from gummiboot (cursor_left(),
+// cursor_right(), & line_edit()).
+
+/*
+ * Simple UEFI boot loader which executes configured EFI images, where the
+ * default entry is selected by a configured pattern (glob) or an on-screen
+ * menu.
+ *
+ * All gummiboot code is LGPL not GPL, to stay out of politics and to give
+ * the freedom of copying code from programs to possible future libraries.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 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 GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (C) 2012-2013 Kay Sievers <kay@vrfy.org>
+ * Copyright (C) 2012 Harald Hoyer <harald@redhat.com>
+ *
+ * "Any intelligent fool can make things bigger, more complex, and more violent.
+"
+ *   -- Albert Einstein
+ */
+
+#include "global.h"
+#include "screen.h"
+#include "lib.h"
+#include "../include/refit_call_wrapper.h"
+
+static void cursor_left(UINTN *cursor, UINTN *first)
+{
+   if ((*cursor) > 0)
+      (*cursor)--;
+   else if ((*first) > 0)
+      (*first)--;
+}
+
+static void cursor_right(UINTN *cursor, UINTN *first, UINTN x_max, UINTN len)
+{
+   if ((*cursor)+2 < x_max)
+      (*cursor)++;
+   else if ((*first) + (*cursor) < len)
+      (*first)++;
+}
+
+BOOLEAN line_edit(CHAR16 *line_in, CHAR16 **line_out, UINTN x_max) {
+   CHAR16 *line;
+   UINTN size;
+   UINTN len;
+   UINTN first;
+   UINTN y_pos = 3;
+   CHAR16 *print;
+   UINTN cursor;
+   BOOLEAN exit;
+   BOOLEAN enter;
+
+   DrawScreenHeader(L"Line Editor");
+   refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, (ConWidth - 71) / 2, ConHeight - 1);
+   refit_call2_wrapper(ST->ConOut->OutputString, ST->ConOut,
+                       L"Use cursor keys to edit, Esc to exit, Enter to boot with edited options");
+
+   if (!line_in)
+      line_in = L"";
+   size = StrLen(line_in) + 1024;
+   line = AllocatePool(size * sizeof(CHAR16));
+   StrCpy(line, line_in);
+   len = StrLen(line);
+   print = AllocatePool(x_max * sizeof(CHAR16));
+
+   refit_call2_wrapper(ST->ConOut->EnableCursor, ST->ConOut, TRUE);
+
+   first = 0;
+   cursor = 0;
+   enter = FALSE;
+   exit = FALSE;
+   while (!exit) {
+      UINTN index;
+      EFI_STATUS err;
+      EFI_INPUT_KEY key;
+      UINTN i;
+
+      i = len - first;
+      if (i >= x_max-2)
+         i = x_max-2;
+      CopyMem(print, line + first, i * sizeof(CHAR16));
+      print[i++] = ' ';
+      print[i] = '\0';
+
+      refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, 0, y_pos);
+      refit_call2_wrapper(ST->ConOut->OutputString, ST->ConOut, print);
+      refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
+
+      refit_call3_wrapper(BS->WaitForEvent, 1, &ST->ConIn->WaitForKey, &index);
+      err = refit_call2_wrapper(ST->ConIn->ReadKeyStroke, ST->ConIn, &key);
+      if (EFI_ERROR(err))
+         continue;
+
+      switch (key.ScanCode) {
+      case SCAN_ESC:
+         exit = TRUE;
+         break;
+      case SCAN_HOME:
+         cursor = 0;
+         first = 0;
+         continue;
+      case SCAN_END:
+         cursor = len;
+         if (cursor >= x_max) {
+            cursor = x_max-2;
+            first = len - (x_max-2);
+         }
+         continue;
+      case SCAN_UP:
+         while((first + cursor) && line[first + cursor] == ' ')
+            cursor_left(&cursor, &first);
+         while((first + cursor) && line[first + cursor] != ' ')
+            cursor_left(&cursor, &first);
+         while((first + cursor) && line[first + cursor] == ' ')
+            cursor_left(&cursor, &first);
+         if (first + cursor != len && first + cursor)
+            cursor_right(&cursor, &first, x_max, len);
+         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
+         continue;
+      case SCAN_DOWN:
+         while(line[first + cursor] && line[first + cursor] == ' ')
+            cursor_right(&cursor, &first, x_max, len);
+         while(line[first + cursor] && line[first + cursor] != ' ')
+            cursor_right(&cursor, &first, x_max, len);
+         while(line[first + cursor] && line[first + cursor] == ' ')
+              cursor_right(&cursor, &first, x_max, len);
+         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
+         continue;
+      case SCAN_RIGHT:
+         if (first + cursor == len)
+            continue;
+         cursor_right(&cursor, &first, x_max, len);
+         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
+         continue;
+      case SCAN_LEFT:
+         cursor_left(&cursor, &first);
+         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
+         continue;
+      case SCAN_DELETE:
+         if (len == 0)
+            continue;
+         if (first + cursor == len)
+            continue;
+         for (i = first + cursor; i < len; i++)
+            line[i] = line[i+1];
+         line[len-1] = ' ';
+         len--;
+         continue;
+      }
+
+      switch (key.UnicodeChar) {
+      case CHAR_LINEFEED:
+      case CHAR_CARRIAGE_RETURN:
+         *line_out = line;
+         line = NULL;
+         enter = TRUE;
+         exit = TRUE;
+         break;
+      case CHAR_BACKSPACE:
+         if (len == 0)
+            continue;
+         if (first == 0 && cursor == 0)
+            continue;
+         for (i = first + cursor-1; i < len; i++)
+            line[i] = line[i+1];
+         len--;
+         if (cursor > 0)
+            cursor--;
+         if (cursor > 0 || first == 0)
+            continue;
+         /* show full line if it fits */
+         if (len < x_max-2) {
+            cursor = first;
+            first = 0;
+            continue;
+         }
+         /* jump left to see what we delete */
+         if (first > 10) {
+            first -= 10;
+            cursor = 10;
+         } else {
+            cursor = first;
+            first = 0;
+         }
+         continue;
+      case '\t':
+      case ' ' ... '~':
+      case 0x80 ... 0xffff:
+         if (len+1 == size)
+            continue;
+         for (i = len; i > first + cursor; i--)
+            line[i] = line[i-1];
+         line[first + cursor] = key.UnicodeChar;
+         len++;
+         line[len] = '\0';
+         if (cursor+2 < x_max)
+            cursor++;
+         else if (first + cursor < len)
+            first++;
+         continue;
+      }
+   }
+
+   refit_call2_wrapper(ST->ConOut->EnableCursor, ST->ConOut, FALSE);
+   FreePool(print);
+   FreePool(line);
+   return enter;
+} /* BOOLEAN line_edit() */
diff --git a/refind/line_edit.h b/refind/line_edit.h
new file mode 100644 (file)
index 0000000..83338de
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ * refind/screen_edit.h
+ *
+ * Line-editing functions borrowed from gummiboot
+ *
+ */
+/*
+ * Simple UEFI boot loader which executes configured EFI images, where the
+ * default entry is selected by a configured pattern (glob) or an on-screen
+ * menu.
+ *
+ * All gummiboot code is LGPL not GPL, to stay out of politics and to give
+ * the freedom of copying code from programs to possible future libraries.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 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 GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (C) 2012-2013 Kay Sievers <kay@vrfy.org>
+ * Copyright (C) 2012 Harald Hoyer <harald@redhat.com>
+ *
+ * "Any intelligent fool can make things bigger, more complex, and more violent.
+"
+ *   -- Albert Einstein
+ */
+
+#ifndef __LINE_EDIT_H_
+#define __LINE_EDIT_H_
+
+BOOLEAN line_edit(CHAR16 *line_in, CHAR16 **line_out, UINTN x_max);
+
+#endif
index 9d191077a84ad05f7037906fa538966dc4093173..ab584f09628b522a93e0e61f011e44d0368f6cc7 100644 (file)
  * Modifications copyright (c) 2012-2015 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "global.h"
 #include "config.h"
index 63bf9fc6ecc0c9125475ecb5ce6f15e24314bf9a..8fe0c1e19d48b120279dd32017b2adb9f7e6ed59 100644 (file)
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 /*
- * Modifications copyright (c) 2012 Roderick W. Smith
+ * Modifications copyright (c) 2012-2015 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "global.h"
 #include "screen.h"
index 29d11c80b4582bddd504e522a8517a35416ab616..94c30393dcbf8d9d55e57afae390755d228f49e1 100644 (file)
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 /*
- * Modifications copyright (c) 2012-2014 Roderick W. Smith
+ * Modifications copyright (c) 2012-2015 Roderick W. Smith
  *
  * Modifications distributed under the terms of the GNU General Public
- * License (GPL) version 3 (GPLv3), a copy of which must be distributed
- * with this source code or binaries made from it.
+ * License (GPL) version 3 (GPLv3), or (at your option) any later version.
  *
  */
+/*
+ * 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
+ * (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
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
 
 #include "global.h"
 #include "screen.h"
@@ -58,8 +71,6 @@ UINTN ConWidth;
 UINTN ConHeight;
 CHAR16 *BlankLine = NULL;
 
-static VOID DrawScreenHeader(IN CHAR16 *Title);
-
 // UGA defines and variables
 
 UINTN UGAWidth;
@@ -266,7 +277,7 @@ VOID TerminateScreen(VOID)
     refit_call2_wrapper(ST->ConOut->EnableCursor, ST->ConOut, TRUE);
 }
 
-static VOID DrawScreenHeader(IN CHAR16 *Title)
+VOID DrawScreenHeader(IN CHAR16 *Title)
 {
     UINTN y;
 
@@ -581,191 +592,3 @@ VOID BltImageCompositeBadge(IN EG_IMAGE *BaseImage, IN EG_IMAGE *TopImage, IN EG
          GraphicsScreenDirty = TRUE;
      }
 }
-
-// Line-editing functions borrowed from gummiboot (cursor_left(), cursor_right(), & line_edit()).
-// gummiboot is copyright (c) 2012 by Kay Sievers <kay.sievers@vrfy.org> and Harald Hoyer
-// <harald@redhat.com> and is licensed under the LGPL 2.1.
-
-static void cursor_left(UINTN *cursor, UINTN *first)
-{
-   if ((*cursor) > 0)
-      (*cursor)--;
-   else if ((*first) > 0)
-      (*first)--;
-}
-
-static void cursor_right(UINTN *cursor, UINTN *first, UINTN x_max, UINTN len)
-{
-   if ((*cursor)+2 < x_max)
-      (*cursor)++;
-   else if ((*first) + (*cursor) < len)
-      (*first)++;
-}
-
-BOOLEAN line_edit(CHAR16 *line_in, CHAR16 **line_out, UINTN x_max) {
-   CHAR16 *line;
-   UINTN size;
-   UINTN len;
-   UINTN first;
-   UINTN y_pos = 3;
-   CHAR16 *print;
-   UINTN cursor;
-   BOOLEAN exit;
-   BOOLEAN enter;
-
-   DrawScreenHeader(L"Line Editor");
-   refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, (ConWidth - 71) / 2, ConHeight - 1);
-   refit_call2_wrapper(ST->ConOut->OutputString, ST->ConOut,
-                       L"Use cursor keys to edit, Esc to exit, Enter to boot with edited options");
-
-   if (!line_in)
-      line_in = L"";
-   size = StrLen(line_in) + 1024;
-   line = AllocatePool(size * sizeof(CHAR16));
-   StrCpy(line, line_in);
-   len = StrLen(line);
-   print = AllocatePool(x_max * sizeof(CHAR16));
-
-   refit_call2_wrapper(ST->ConOut->EnableCursor, ST->ConOut, TRUE);
-
-   first = 0;
-   cursor = 0;
-   enter = FALSE;
-   exit = FALSE;
-   while (!exit) {
-      UINTN index;
-      EFI_STATUS err;
-      EFI_INPUT_KEY key;
-      UINTN i;
-
-      i = len - first;
-      if (i >= x_max-2)
-         i = x_max-2;
-      CopyMem(print, line + first, i * sizeof(CHAR16));
-      print[i++] = ' ';
-      print[i] = '\0';
-
-      refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, 0, y_pos);
-      refit_call2_wrapper(ST->ConOut->OutputString, ST->ConOut, print);
-      refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
-
-      refit_call3_wrapper(BS->WaitForEvent, 1, &ST->ConIn->WaitForKey, &index);
-      err = refit_call2_wrapper(ST->ConIn->ReadKeyStroke, ST->ConIn, &key);
-      if (EFI_ERROR(err))
-         continue;
-
-      switch (key.ScanCode) {
-      case SCAN_ESC:
-         exit = TRUE;
-         break;
-      case SCAN_HOME:
-         cursor = 0;
-         first = 0;
-         continue;
-      case SCAN_END:
-         cursor = len;
-         if (cursor >= x_max) {
-            cursor = x_max-2;
-            first = len - (x_max-2);
-         }
-         continue;
-      case SCAN_UP:
-         while((first + cursor) && line[first + cursor] == ' ')
-            cursor_left(&cursor, &first);
-         while((first + cursor) && line[first + cursor] != ' ')
-            cursor_left(&cursor, &first);
-         while((first + cursor) && line[first + cursor] == ' ')
-            cursor_left(&cursor, &first);
-         if (first + cursor != len && first + cursor)
-            cursor_right(&cursor, &first, x_max, len);
-         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
-         continue;
-      case SCAN_DOWN:
-         while(line[first + cursor] && line[first + cursor] == ' ')
-            cursor_right(&cursor, &first, x_max, len);
-         while(line[first + cursor] && line[first + cursor] != ' ')
-            cursor_right(&cursor, &first, x_max, len);
-         while(line[first + cursor] && line[first + cursor] == ' ')
-              cursor_right(&cursor, &first, x_max, len);
-         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
-         continue;
-      case SCAN_RIGHT:
-         if (first + cursor == len)
-            continue;
-         cursor_right(&cursor, &first, x_max, len);
-         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
-         continue;
-      case SCAN_LEFT:
-         cursor_left(&cursor, &first);
-         refit_call3_wrapper(ST->ConOut->SetCursorPosition, ST->ConOut, cursor, y_pos);
-         continue;
-      case SCAN_DELETE:
-         if (len == 0)
-            continue;
-         if (first + cursor == len)
-            continue;
-         for (i = first + cursor; i < len; i++)
-            line[i] = line[i+1];
-         line[len-1] = ' ';
-         len--;
-         continue;
-      }
-
-      switch (key.UnicodeChar) {
-      case CHAR_LINEFEED:
-      case CHAR_CARRIAGE_RETURN:
-         *line_out = line;
-         line = NULL;
-         enter = TRUE;
-         exit = TRUE;
-         break;
-      case CHAR_BACKSPACE:
-         if (len == 0)
-            continue;
-         if (first == 0 && cursor == 0)
-            continue;
-         for (i = first + cursor-1; i < len; i++)
-            line[i] = line[i+1];
-         len--;
-         if (cursor > 0)
-            cursor--;
-         if (cursor > 0 || first == 0)
-            continue;
-         /* show full line if it fits */
-         if (len < x_max-2) {
-            cursor = first;
-            first = 0;
-            continue;
-         }
-         /* jump left to see what we delete */
-         if (first > 10) {
-            first -= 10;
-            cursor = 10;
-         } else {
-            cursor = first;
-            first = 0;
-         }
-         continue;
-      case '\t':
-      case ' ' ... '~':
-      case 0x80 ... 0xffff:
-         if (len+1 == size)
-            continue;
-         for (i = len; i > first + cursor; i--)
-            line[i] = line[i-1];
-         line[first + cursor] = key.UnicodeChar;
-         len++;
-         line[len] = '\0';
-         if (cursor+2 < x_max)
-            cursor++;
-         else if (first + cursor < len)
-            first++;
-         continue;
-      }
-   }
-
-   refit_call2_wrapper(ST->ConOut->EnableCursor, ST->ConOut, FALSE);
-   FreePool(print);
-   FreePool(line);
-   return enter;
-} /* BOOLEAN line_edit() */
index 25bdbb9ebad062dda212ac61c3edce770af499a5..9a1c911de0604e7679b4bc0a75c804bc8140e903 100644 (file)
@@ -84,6 +84,8 @@ VOID FinishTextScreen(IN BOOLEAN WaitAlways);
 VOID BeginExternalScreen(IN BOOLEAN UseGraphicsMode, IN CHAR16 *Title);
 VOID FinishExternalScreen(VOID);
 VOID TerminateScreen(VOID);
+VOID DrawScreenHeader(IN CHAR16 *Title);
+
 #if REFIT_DEBUG > 0
 VOID DebugPause(VOID);
 #else
@@ -106,6 +108,4 @@ VOID BltImageAlpha(IN EG_IMAGE *Image, IN UINTN XPos, IN UINTN YPos, IN EG_PIXEL
 //VOID BltImageComposite(IN EG_IMAGE *BaseImage, IN EG_IMAGE *TopImage, IN UINTN XPos, IN UINTN YPos);
 VOID BltImageCompositeBadge(IN EG_IMAGE *BaseImage, IN EG_IMAGE *TopImage, IN EG_IMAGE *BadgeImage, IN UINTN XPos, IN UINTN YPos);
 
-BOOLEAN line_edit(CHAR16 *line_in, CHAR16 **line_out, UINTN x_max);
-
 #endif