123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- // size=30
- message ClientResponseEncrypted {
- required LoginCredentials login_credentials = 0xa; // idx=0 offset=c
- optional AccountCreation account_creation = 0x14; // idx=1 offset=10
- optional FingerprintResponseUnion fingerprint_response = 0x1e; // idx=2 offset=14
- optional PeerTicketUnion peer_ticket = 0x28; // idx=3 offset=18
- required SystemInfo system_info = 0x32; // idx=4 offset=1c
- optional string platform_model = 0x3c; // idx=5 offset=20
- optional string version_string = 0x46; // idx=6 offset=24
- optional LibspotifyAppKey appkey = 0x50; // idx=7 offset=28
- optional ClientInfo client_info = 0x5a; // idx=8 offset=2c
- }
- // size=18
- message LoginCredentials {
- optional string username = 0xa; // idx=0 offset=c
- required Type typ = 0x14; // idx=1 offset=10
- optional bytes auth_data = 0x1e; // idx=2 offset=14
- }
- enum Type {
- AUTHENTICATION_USER_PASS = 0x0;
- AUTHENTICATION_STORED_SPOTIFY_CREDENTIALS = 0x1;
- AUTHENTICATION_STORED_FACEBOOK_CREDENTIALS = 0x2;
- AUTHENTICATION_SPOTIFY_TOKEN = 0x3;
- AUTHENTICATION_FACEBOOK_TOKEN = 0x4;
- }
- enum AccountCreation {
- ACCOUNT_CREATION_ALWAYS_PROMPT = 0x1;
- ACCOUNT_CREATION_ALWAYS_CREATE = 0x3;
- }
- // size=14
- message FingerprintResponseUnion {
- optional FingerprintGrainResponse grain = 0xa; // idx=0 offset=c
- optional FingerprintHmacRipemdResponse hmac_ripemd = 0x14; // idx=1 offset=10
- }
- // size=1c
- message FingerprintGrainResponse {
- required bytes encrypted_key = 0xa; // idx=0 offset=c size=f
- }
- // size=20
- message FingerprintHmacRipemdResponse {
- required bytes hmac = 0xa; // idx=0 offset=c size=13
- }
- // size=14
- message PeerTicketUnion {
- optional PeerTicketPublicKey public_key = 0xa; // idx=0 offset=c
- optional PeerTicketOld old_ticket = 0x14; // idx=1 offset=10
- }
- // size=8c
- message PeerTicketPublicKey {
- required bytes public_key = 0xa; // idx=0 offset=c size=7f
- }
- // size=90
- message PeerTicketOld {
- required bytes peer_ticket = 0xa; // idx=0 offset=c
- required bytes peer_ticket_signature = 0x14; // idx=1 offset=10 size=7f
- }
- // size=34
- message SystemInfo {
- required CpuFamily cpu_family = 0xa; // idx=0 offset=c
- optional uint32 cpu_subtype = 0x14; // idx=1 offset=10
- optional uint32 cpu_ext = 0x1e; // idx=2 offset=14
- optional Brand brand = 0x28; // idx=3 offset=18
- optional uint32 brand_flags = 0x32; // idx=4 offset=1c
- required Os os = 0x3c; // idx=5 offset=20
- optional uint32 os_version = 0x46; // idx=6 offset=24
- optional uint32 os_ext = 0x50; // idx=7 offset=28
- optional string system_information_string = 0x5a; // idx=8 offset=2c
- optional string device_id = 0x64; // idx=9 offset=30
- }
- enum CpuFamily {
- CPU_UNKNOWN = 0x0;
- CPU_X86 = 0x1;
- CPU_X86_64 = 0x2;
- CPU_PPC = 0x3;
- CPU_PPC_64 = 0x4;
- CPU_ARM = 0x5;
- CPU_IA64 = 0x6;
- CPU_SH = 0x7;
- CPU_MIPS = 0x8;
- CPU_BLACKFIN = 0x9;
- }
- enum Brand {
- BRAND_UNBRANDED = 0x0;
- BRAND_INQ = 0x1;
- BRAND_HTC = 0x2;
- BRAND_NOKIA = 0x3;
- }
- enum Os {
- OS_UNKNOWN = 0x0;
- OS_WINDOWS = 0x1;
- OS_OSX = 0x2;
- OS_IPHONE = 0x3;
- OS_S60 = 0x4;
- OS_LINUX = 0x5;
- OS_WINDOWS_CE = 0x6;
- OS_ANDROID = 0x7;
- OS_PALM = 0x8;
- OS_FREEBSD = 0x9;
- OS_BLACKBERRY = 0xa;
- OS_SONOS = 0xb;
- OS_LOGITECH = 0xc;
- OS_WP7 = 0xd;
- OS_ONKYO = 0xe;
- OS_PHILIPS = 0xf;
- OS_WD = 0x10;
- OS_VOLVO = 0x11;
- OS_TIVO = 0x12;
- OS_AWOX = 0x13;
- OS_MEEGO = 0x14;
- OS_QNXNTO = 0x15;
- OS_BCO = 0x16;
- }
- // size=168
- message LibspotifyAppKey {
- required uint32 version = 0x1; // idx=0 offset=c
- required bytes devkey = 0x2; // idx=1 offset=10 size=7f
- required bytes signature = 0x3; // idx=2 offset=90 size=bf
- required string useragent = 0x4; // idx=3 offset=150
- required bytes callback_hash = 0x5; // idx=4 offset=154 size=13
- }
- // size=18
- message ClientInfo {
- optional bool limited = 0x1; // idx=0 offset=c
- optional ClientInfoFacebook fb = 0x2; // idx=1 offset=10
- optional string language = 0x3; // idx=2 offset=14
- }
- // size=10
- message ClientInfoFacebook {
- optional string machine_id = 0x1; // idx=0 offset=c
- }
- message AuthSuccess {
- required string username = 0x0a;
- required uint32 data1 = 0x14;
- required uint32 data2 = 0x19;
- required uint32 data3 = 0x1e;
- required bytes data4 = 0x28;
- required bytes data5 = 0x32;
- }
- message AuthFailure {
- required uint32 code = 0x0a;
- required Data1 data1 = 0x32;
- message Data1 {
- required string data0 = 0x01;
- }
- }
|