diff --git a/troposphere/haze/include/haze/ptp.hpp b/troposphere/haze/include/haze/ptp.hpp index 216767ef6..6d7a76e15 100644 --- a/troposphere/haze/include/haze/ptp.hpp +++ b/troposphere/haze/include/haze/ptp.hpp @@ -216,7 +216,7 @@ namespace haze { PtpObjectPropertyCode_AllowedFolderContents = 0xdc0c, PtpObjectPropertyCode_Hidden = 0xdc0d, PtpObjectPropertyCode_SystemObject = 0xdc0e, - PtpObjectPropertyCode_PersistantUniqueObjectIdentifier = 0xdc41, + PtpObjectPropertyCode_PersistentUniqueObjectIdentifier = 0xdc41, PtpObjectPropertyCode_SyncId = 0xdc42, PtpObjectPropertyCode_PropertyBag = 0xdc43, PtpObjectPropertyCode_Name = 0xdc44, diff --git a/troposphere/haze/source/ptp_responder.cpp b/troposphere/haze/source/ptp_responder.cpp index bbb47f9a9..a0f0a2119 100644 --- a/troposphere/haze/source/ptp_responder.cpp +++ b/troposphere/haze/source/ptp_responder.cpp @@ -77,6 +77,7 @@ namespace haze { PtpObjectPropertyCode_ObjectFormat, PtpObjectPropertyCode_ObjectSize, PtpObjectPropertyCode_ObjectFileName, + PtpObjectPropertyCode_PersistentUniqueObjectIdentifier, }; constexpr bool IsSupportedObjectPropertyCode(PtpObjectPropertyCode c) { @@ -779,6 +780,12 @@ namespace haze { /* Each property code corresponds to a different pattern, which contains the data type, */ /* whether the property can be set for an object, and the default value of the property. */ switch (property_code) { + case PtpObjectPropertyCode_PersistentUniqueObjectIdentifier: + { + R_TRY(db.Add(PtpDataTypeCode_U128)); + R_TRY(db.Add(PtpPropertyGetSetFlag_Get)); + R_TRY(db.Add(0)); + } case PtpObjectPropertyCode_ObjectSize: { R_TRY(db.Add(PtpDataTypeCode_U64)); @@ -862,6 +869,9 @@ namespace haze { R_TRY(db.WriteVariableLengthData(m_request_header, [&] { switch (property_code) { + case PtpObjectPropertyCode_PersistentUniqueObjectIdentifier: + R_TRY(db.Add(object_id)); + break; case PtpObjectPropertyCode_ObjectSize: R_TRY(db.Add(size)); break;