Home | History | Annotate | Download | only in EfiFileLib

Lines Matching refs:PathName

212 PathName is in the form <device name>:<path> for example fs1:\ or ROOT:\.

213 Return TRUE if the <devce name> prefix of PathName matches a file system
217 @param PathName PathName to check
221 @return TRUE PathName matches a Volume Label and MatchIndex is valid
222 @return FALSE PathName does not match a Volume Label MatchIndex undefined
227 IN CHAR8 *PathName,
248 if (PathName[Compare] != (CHAR8)mFsInfo[Index]->VolumeLabel[Compare]) {
250 if (!((PathName[Compare] == '_') && (mFsInfo[Index]->VolumeLabel[Compare] == L' '))) {
295 IN CHAR8 *PathName,
301 Str = PathName;
399 CopyMem (&FilePath->PathName, UnicodeFileName, Size);
639 Open a device named by PathName. The PathName includes a device name and
640 path separated by a :. See file header for more details on the PathName
649 @param PathName Path to parse to open
659 IN CHAR8 *PathName,
685 StrLen = AsciiStrSize (PathName);
692 if (PathName[FileStart] == ':') {
701 VolumeNameMatch = EblMatchVolumeName (PathName, FileStart, &DevNumber);
711 AsciiLength = AsciiStrSize (gCwd) + AsciiStrSize (PathName);
717 if ((PathName[0] == '/') || (PathName[0] == '\\')) {
718 // PathName starts in / so this means we go to the root of the device in the CWD.
731 if ((*PathName != '/') && (*PathName != '\\') && (gCwd[StrLen-1] != '/') && (gCwd[StrLen-1] != '\\')) {
736 AsciiStrCatS (CwdPlusPathName, AsciiLength, PathName);
747 DevNumber = EblConvertDevStringToNumber ((CHAR8 *)PathName);
751 AsciiStrCpyS (File->DeviceName, StrLen, PathName);
765 if (*PathName == 'f' || *PathName == 'F' || VolumeNameMatch) {
766 if (PathName[1] == 's' || PathName[1] == 'S' || VolumeNameMatch) {
772 Status = EblFileDevicePath (File, &PathName[FileStart], OpenMode);
774 } else if (PathName[1] == 'v' || PathName[1] == 'V') {
781 if ((PathName[FileStart] == '/') || (PathName[FileStart] == '\\')) {
788 for (Index = FileStart; PathName[Index] != '\0'; Index++) {
789 if (PathName[Index] == ':') {
792 ModifiedSectionType = (EFI_SECTION_TYPE)AsciiStrHexToUintn (&PathName[Index + 1]);
793 PathName[Index] = '\0';
797 Status = EblFvFileDevicePath (File, &PathName[FileStart], ModifiedSectionType);
799 } else if ((*PathName == 'A') || (*PathName == 'a')) {
802 // 1st colon is at PathName[FileStart - 1]
803 File->Buffer = (VOID *)AsciiStrHexToUintn (&PathName[FileStart]);
806 while ((PathName[FileStart] != ':') && (PathName[FileStart] != '\0')) {
811 if (PathName[FileStart] == '\0') {
814 File->Size = AsciiStrHexToUintn (&PathName[FileStart + 1]);
826 } else if (*PathName== 'l' || *PathName == 'L') {
844 } else if (*PathName == 'b' || *PathName == 'B') {
853 // 1st colon is at PathName[FileStart - 1]
854 File->DiskOffset = AsciiStrHexToUintn (&PathName[FileStart]);
857 while ((PathName[FileStart] != ':') && (PathName[FileStart] != '\0')) {
862 if (PathName[FileStart] == '\0') {
865 Size = AsciiStrHexToUintn (&PathName[FileStart + 1]);
878 } else if ((*PathName) >= '0' && (*PathName <= '9')) {
893 Status = ConvertIpStringToEfiIp (PathName, &File->ServerIp);
1010 Use DeviceType and Index to form a valid PathName and try and open it.