From a32a23c49e8e3b5abef6f01fe28d54385da3db3f Mon Sep 17 00:00:00 2001 From: Eamonn Rea Date: Fri, 28 Jun 2024 01:38:23 +0100 Subject: [PATCH 1/3] appcache: add new magic for Steam Client Beta (June 2024) --- steam/utils/appcache.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/steam/utils/appcache.py b/steam/utils/appcache.py index 8760bd21..87be1550 100644 --- a/steam/utils/appcache.py +++ b/steam/utils/appcache.py @@ -69,7 +69,7 @@ def parse_appinfo(fp): # uint32 - EOF: 0 magic = fp.read(4) - if magic not in (b"'DV\x07", b"(DV\x07"): + if magic not in (b"'DV\x07", b"(DV\x07", b")DV\x07"): raise SyntaxError("Invalid magic, got %s" % repr(magic)) universe = uint32.unpack(fp.read(4))[0] From 4863486da72f23b18971d837ae99cf47034f3b9b Mon Sep 17 00:00:00 2001 From: Eamonn Rea Date: Fri, 28 Jun 2024 01:47:29 +0100 Subject: [PATCH 2/3] appcache: update comment examples --- steam/utils/appcache.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/steam/utils/appcache.py b/steam/utils/appcache.py index 87be1550..c32417f0 100644 --- a/steam/utils/appcache.py +++ b/steam/utils/appcache.py @@ -7,7 +7,7 @@ >>> header, apps = parse_appinfo(open('/d/Steam/appcache/appinfo.vdf', 'rb')) >>> header - {'magic': b"(DV\\x07", 'universe': 1} + {'magic': b")DV\\x07", 'universe': 1} >>> next(apps) {'appid': 5, 'size': 79, @@ -53,7 +53,7 @@ def parse_appinfo(fp): :return: (header, apps iterator) """ # format: -# uint32 - MAGIC: "'DV\x07" or "(DV\x07" +# uint32 - MAGIC: "'DV\x07" or "(DV\x07" or b")DV\x07" # uint32 - UNIVERSE: 1 # ---- repeated app sections ---- # uint32 - AppID From 2ea9057e9b17d06db7ce1252119d17515b571711 Mon Sep 17 00:00:00 2001 From: Eamonn Rea Date: Fri, 28 Jun 2024 02:43:05 +0100 Subject: [PATCH 3/3] appcache: progress on reading past string table --- steam/utils/appcache.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/steam/utils/appcache.py b/steam/utils/appcache.py index c32417f0..84519ed3 100644 --- a/steam/utils/appcache.py +++ b/steam/utils/appcache.py @@ -43,6 +43,7 @@ uint32 = struct.Struct('