MCPcopy Create free account
hub / github.com/GrapheneCt/NetStream / Enqueue

Method Enqueue

NetStream/source/downloader.cpp:61–142  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59}
60
61int32_t Downloader::Enqueue(Plugin *workPlugin, const char *url, const char *name)
62{
63 IPMI::DataInfo dtInfo[3];
64 IPMI::BufferInfo bfInfo[1];
65 int32_t ret = SCE_OK;
66 int32_t ret2 = SCE_OK;
67 int32_t dwRes = 0;
68
69 sce::Download::GetHeaderInfoParam hparam;
70 sce::Download::AuthParam aparam;
71 sce::Download::DownloadParam dparam;
72 sce::Download::HeaderInfo minfo;
73 sce_paf_memset(&hparam, 0, sizeof(sce::Download::GetHeaderInfoParam));
74 sce_paf_memset(&aparam, 0, sizeof(sce::Download::AuthParam));
75 sce_paf_memset(&dparam, 0, sizeof(sce::Download::DownloadParam));
76 sce_paf_memset(&minfo, 0, sizeof(sce::Download::HeaderInfo));
77
78 hparam.contentType = sce::Download::ContentType_Multimedia;
79 hparam.resolveTimeout = 5000;
80 hparam.resolveRetry = 2;
81 hparam.connectTimeout = 3000;
82 hparam.sendTimeout = 0;
83 hparam.recvTimeout = 3000;
84 sce_paf_strcpy((char *)hparam.url, url);
85
86 dtInfo[0].data = &hparam;
87 dtInfo[0].dataSize = sizeof(sce::Download::GetHeaderInfoParam);
88 dtInfo[1].data = &aparam;
89 dtInfo[1].dataSize = sizeof(sce::Download::AuthParam);
90
91 bfInfo[0].data = &minfo;
92 bfInfo[0].dataSize = sizeof(sce::Download::HeaderInfo);
93
94 ret = dw.client->invokeSyncMethod(sce::Download::Method_GetHeaderInfo, dtInfo, 2, &ret2, bfInfo, 1);
95 if (ret != SCE_OK)
96 goto end;
97 else if (ret2 != SCE_OK)
98 {
99 ret = ret2;
100 goto end;
101 }
102
103 sce_paf_memset(&minfo.name, 0, sizeof(minfo.name));
104 sce_paf_strcpy(reinterpret_cast<char *>(minfo.name), name);
105
106 dparam.bgdlLocation = 1;
107 sce_paf_strcpy(reinterpret_cast<char *>(dparam.url), url);
108
109 dtInfo[0].data = &dparam;
110 dtInfo[0].dataSize = sizeof(sce::Download::DownloadParam);
111 dtInfo[1].data = &aparam;
112 dtInfo[1].dataSize = sizeof(sce::Download::AuthParam);
113 dtInfo[2].data = &minfo;
114 dtInfo[2].dataSize = sizeof(sce::Download::HeaderInfo);
115
116 bfInfo[0].data = &dwRes;
117 bfInfo[0].dataSize = sizeof(int32_t);
118

Callers 15

AddAsyncMethod · 0.80
EnqueueAsyncMethod · 0.80
AddAsyncMethod · 0.80
EnqueueDownloadMethod · 0.80
DestroyAsyncMethod · 0.80
AddAsyncMethod · 0.80
OnNpDialogCompleteMethod · 0.80
pluginLoadCBFunction · 0.80
InitAsyncMethod · 0.80
InitAsyncMethod · 0.80
InitAsyncMethod · 0.80
InitAsyncMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected