Revision: 14851
          http://sourceforge.net/p/edk2/code/14851
Author:   jcarsey
Date:     2013-11-15 18:44:29 +0000 (Fri, 15 Nov 2013)
Log Message:
-----------
ShellPkg: Add DiskIO2, and fix GUID from string check to be case insensitive
- Add DiskIO2 to list of known protocols
- Fix string check to be case insensitive for commands like ?\226?\128?\152dh 
?\226?\128?\147p protocolname?\226?\128?\153

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chris Phillips <[email protected]>
Reviewed-by: Jaben Carsey <[email protected]>

Modified Paths:
--------------
    trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
    trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.h
    trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
    trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.uni

Modified: 
trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c
===================================================================
--- trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c     
2013-11-15 18:41:50 UTC (rev 14850)
+++ trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.c     
2013-11-15 18:44:29 UTC (rev 14851)
@@ -1,6 +1,7 @@
 /** @file
   Provides interface to advanced shell functionality for parsing both handle 
and protocol database.
 
+  Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
   Copyright (c) 2010 - 2013, 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
@@ -621,6 +622,11 @@
   {STRING_TOKEN(STR_UC2),                   &gEfiUserCredential2ProtocolGuid,  
               NULL},
 
 //
+// UEFI 2.4
+//
+  {STRING_TOKEN(STR_DISK_IO2),              &gEfiDiskIo2ProtocolGuid,          
               NULL},
+
+//
 // terminator
 //
   {STRING_TOKEN(STR_UNKNOWN_DEVICE),        NULL,                              
               NULL},
@@ -753,7 +759,7 @@
   if (PcdGetBool(PcdShellIncludeNtGuids)) {
     for (ListWalker = mGuidStringListNT ; ListWalker != NULL && 
ListWalker->GuidId != NULL ; ListWalker++) {
       String = HiiGetString(mHandleParsingHiiHandle, ListWalker->StringId, 
Lang);
-      if (Name != NULL && String != NULL && StrCmp(Name, String)==0) {
+      if (Name != NULL && String != NULL && StringNoCaseCompare (&Name, 
&String) == 0) {
         *Guid = ListWalker->GuidId;
       }
       SHELL_FREE_NON_NULL(String);
@@ -764,7 +770,7 @@
   }
   for (ListWalker = mGuidStringList ; ListWalker != NULL && ListWalker->GuidId 
!= NULL ; ListWalker++) {
     String = HiiGetString(mHandleParsingHiiHandle, ListWalker->StringId, Lang);
-    if (Name != NULL && String != NULL && StrCmp(Name, String)==0) {
+    if (Name != NULL && String != NULL && StringNoCaseCompare (&Name, &String) 
== 0) {
       *Guid = ListWalker->GuidId;
     }
     SHELL_FREE_NON_NULL(String);

Modified: 
trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.h
===================================================================
--- trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.h     
2013-11-15 18:41:50 UTC (rev 14850)
+++ trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.h     
2013-11-15 18:44:29 UTC (rev 14851)
@@ -1,6 +1,7 @@
 /** @file
   Provides interface to advanced shell functionality for parsing both handle 
and protocol database.
 
+  Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
   Copyright (c) 2011 - 2012, 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
@@ -130,6 +131,7 @@
 #include <Protocol/BlockIo2.h>
 #include <Protocol/StorageSecurityCommand.h>
 #include <Protocol/UserCredential2.h>
+#include <Protocol/DiskIo2.h>
 
 #include <Library/HandleParsingLib.h>
 #include <Library/UefiBootServicesTableLib.h>
@@ -143,6 +145,7 @@
 #include <Library/UefiLib.h>
 #include <Library/HiiLib.h>
 #include <Library/ShellLib.h>
+#include <Library/SortLib.h>
 
 typedef struct {
   LIST_ENTRY  Link;

Modified: 
trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
===================================================================
--- trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf   
2013-11-15 18:41:50 UTC (rev 14850)
+++ trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf   
2013-11-15 18:44:29 UTC (rev 14851)
@@ -1,5 +1,6 @@
 ##  @file
 #  Provides interface to advanced shell functionality for parsing both handle 
and protocol database.
+#  Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
 #  Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved. <BR>
 #
 #  This program and the accompanying materials
@@ -47,6 +48,7 @@
   PrintLib
   UefiLib
   HiiLib
+  SortLib
 
 [Protocols]
   gEfiSimpleFileSystemProtocolGuid                        ##CONSUMES
@@ -167,6 +169,7 @@
   gEfiTcgProtocolGuid                                     ##UNDEFINED
   gEfiHiiPackageListProtocolGuid                          ##UNDEFINED
   gEfiDriverFamilyOverrideProtocolGuid                    ##UNDEFINED
+  gEfiDiskIo2ProtocolGuid                                 ##UNDEFINED
 
 [Guids]
   gEfiFileInfoGuid                                        ##CONSUMES

Modified: 
trunk/edk2/ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.uni
===================================================================
(Binary files differ)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to