Weiyi Wang
f3ee5feb02
Merge pull request #4358 from wwylele/kernel-global-2
...
kernel: Eliminate global state in process and handle_table
2018-10-26 15:51:36 -04:00
Weiyi Wang
8ad6cbfde2
kernel/thread: change owner_process parameter to reference
...
To enforce a valid process object
2018-10-26 09:37:46 -04:00
Weiyi Wang
e5c5d1ecce
Kernel: change owner_process in Thread/SharedMemory to raw pointer
...
Otherwise circular ownership would form in Process->handle_table->thread->owner_process
2018-10-25 19:54:06 -04:00
Tobias
dec3fb2dcf
nfc: Add Amiibo support (REOPENED) ( #4337 )
...
* Initial implementation
* Various fixes and new features
* Address some review comments
* Fixes
* Address more comments
* Use g_hle_lock
* Add more state checking, remove unneeded include
* Minor changes
2018-10-24 21:01:38 -04:00
Weiyi Wang
8d32843d68
thread/kernel: remove unused callback_id
...
we use the thread id for the same purpose now
2018-10-23 10:06:32 -04:00
Weiyi Wang
eb285c33fd
kernel: make handle table per-process
2018-10-22 21:32:34 -04:00
Weiyi Wang
fda2a5cf54
kernel/thread: use std::unordered_map for callback record
2018-10-22 21:32:34 -04:00
Weiyi Wang
5b45a3e1b5
Kernel/Timer: use unordered_map for callback recording
2018-10-22 21:32:34 -04:00
Weiyi Wang
8fb3d8ff38
kernel/process: move current process to kernel instance
...
Two functional change:
QueryProcessMemory uses the process passed from handle instead current_process
Thread::Stop() uses TLS from owner_process instead of current_process
2018-10-22 21:32:34 -04:00
Weiyi Wang
d9342622b0
kennel/process: move process list to kernel instance
2018-10-22 21:32:34 -04:00
Weiyi Wang
4238754d8c
kernel/process: move next_process_id to kernel instance
2018-10-22 09:30:48 -04:00
Lioncash
930abb4b5e
svc: Correct vma_map boundary check within QueryProcessMemory
...
This should be using the process instance retrieved within the function,
and not g_current_process, otherwise this is potentially comparing
iterators from unrelated vma_map instances (which is undefined
behavior).
2018-10-21 22:00:12 -04:00
Weiyi Wang
751ebe55e9
Kernel: pass ref down to Object and wrap ID counter into kernel state
2018-10-18 21:41:36 -04:00
Weiyi Wang
87426b29ff
kernel: pass ref to shared memory
2018-10-18 21:41:36 -04:00
Weiyi Wang
2a411bb501
Kernel: wrap resource limit state into kernel state; pass ref to resource limit
2018-10-18 21:41:36 -04:00
Weiyi Wang
13c26b4371
Kernel: pass ref to session pair
2018-10-18 21:41:36 -04:00
Weiyi Wang
1213a298df
Kernel: pass ref to port
2018-10-18 21:41:36 -04:00
Weiyi Wang
c141657d83
Kernel: pass ref to timer
2018-10-18 21:41:36 -04:00
Weiyi Wang
247249d5d3
Kernel: pass ref to sempahore
2018-10-18 21:41:36 -04:00
Weiyi Wang
181646679c
ServiceManager: pass down core reference
2018-10-18 21:41:36 -04:00
Weiyi Wang
d940293d32
Kernel: pass ref to thread
2018-10-18 21:41:36 -04:00
Weiyi Wang
9565091fc2
kernel: pass ref in Process
2018-10-18 21:41:36 -04:00
Weiyi Wang
213b259cf1
kernel: pass ref in CodeSet
2018-10-18 21:41:36 -04:00
Weiyi Wang
7449ba85a6
Kernel: pass ref in Mutex
2018-10-18 21:41:36 -04:00
Weiyi Wang
eec11a94cb
Kernel: pass Kernel ref in Event
2018-10-18 21:41:36 -04:00
Weiyi Wang
734be98966
Kernel: pass Kernel reference into AddressArbiter
2018-10-18 21:41:00 -04:00
Weiyi Wang
f446fd1fe5
Kernel: add KernelSystem class
2018-10-18 21:41:00 -04:00
Weiyi Wang
1de63f9b16
Merge pull request #4328 from B3n30/remove_current_module
...
remove GetCurrentModule() functions in HLE Services
2018-10-18 21:39:24 -04:00
B3n30
eb3af0f16a
Add GetModule() helper functions, for HID, CAM, and CFG
2018-10-12 11:50:50 +02:00
B3n30
1b1de23a98
Fixup: Remove unneeded GetUsername
2018-10-11 20:05:45 +02:00
B3n30
9d53136f20
remove GetCurrentModule() functions in HLE Services
2018-10-11 19:23:14 +02:00
Weiyi Wang
0962ab8da9
Merge pull request #4305 from wwylele/fs-global
...
FS/archive: wrap states into ArchiveManager class
2018-10-11 13:04:02 -04:00
Weiyi Wang
9adc407112
Merge pull request #4304 from B3n30/std_optional
...
Replace boost::optional with std::optional where possible
2018-10-11 12:40:00 -04:00
Sebastian Valle
f405134913
Merge pull request #4306 from Subv/apt_jump
...
Services/APT: Better implementation of PrepareToDoApplicationJump and DoApplicationJump.
2018-10-08 15:44:38 -05:00
Ben
d99b1f581f
NWM_UDS: Signal bind_node_event in Unbind ( #4321 )
2018-10-08 15:44:14 -05:00
Weiyi Wang
756a3d404a
Merge pull request #4283 from valentinvanelslande/seed-db
...
Implement SeedDB & Seed Crypto
2018-10-08 14:18:42 -04:00
Weiyi Wang
0b7b9a51d6
Merge pull request #4299 from B3n30/uds
...
NWM_UDS: Fix some issues, cleanups, better PacketHandling
2018-10-07 13:56:59 -04:00
Subv
8ec2a9817c
Services/APT: Better implementation of PrepareToDoApplicationJump and DoApplicationJump.
...
The real console can't launch an Application directly from within another Application so it has to go through the Home Menu. We do not have such limitation and can directly launch the requested title.
2018-10-06 17:08:24 -05:00
Valentin Vanelslande
7b6c5cd988
fix reply header
2018-10-06 16:59:57 -05:00
Weiyi Wang
389d3d630e
fs/archive: wrap states into archive manager
2018-10-06 01:23:03 -04:00
Weiyi Wang
7678327bf2
fs/archive: move file and directory classes to their own files
2018-10-06 01:23:03 -04:00
Weiyi Wang
b163502744
Core: pass down Core::System reference to all services ( #4272 )
...
* Core: pass down Core::System reference to all services
This has to be done at once due to unified interface used by HLE/LLE switcher
* apt: eliminate Core::System::GetInstance
* gpu_gsp: eliminate Core::System::GetInstance in service
* hid: eliminate Core::System::GetInstance
* nwm: eliminate Core::System::GetInstance
* err_f: eliminate Core::System::GetInstance
2018-10-05 10:59:43 -04:00
B3n30
2306af3600
Handle cases when std::optional does not contain a value
2018-10-05 16:51:33 +02:00
Pengfei Zhu
2a90426cb8
Merge pull request #4267 from zhaowenlan1779/movie
...
movie: Add clock init time to CTM header
2018-10-05 08:20:33 -05:00
B3n30
d37a2270d6
Replace boost::optional with std::optional where possible
2018-10-05 13:51:09 +02:00
Weiyi Wang
eb494c574d
Merge pull request #4244 from wwylele/swap-enum
...
common/swap: add swap template for enum
2018-10-04 14:51:49 -04:00
B3n30
458346d1e8
Adressed feedback
2018-10-04 12:34:51 +02:00
B3n30
38f136048e
Cleanup NWM_UDS::SendTo
2018-10-04 00:00:49 +02:00
Weiyi Wang
ea53b0f795
Merge pull request #4298 from Subv/am_titles
...
Services/AM: Implemented BeginImportProgramTemporarily, EndImportProgramWithoutCommit and CommitImportPrograms.
2018-10-03 17:41:40 -04:00
B3n30
7e7f17c78d
Add filter to PacketHandling; Fix some issues with Disconnect
2018-10-03 23:07:31 +02:00
Weiyi Wang
cfa52e2b7b
Merge pull request #4296 from B3n30/service_getter
...
Give frontend access to the hle service interfaces
2018-10-03 15:58:27 -04:00
Subv
0f6f7cfd95
Services/AM: Implemented BeginImportProgramTemporarily, EndImportProgramWithoutCommit and CommitImportPrograms.
...
These functions are pretty much identical to BeginImportProgram and EndImportProgram.
We don't need to do anything special in EndImportProgramWithoutCommit and CommitImportPrograms because we don't need to implement the two-phase title installation that the 3DS uses to prevent corruption of the title.db.
2018-10-03 14:48:39 -05:00
B3n30
544eb25c99
fixup! Give frontend access to the hle service interfaces
2018-10-03 20:08:01 +02:00
B3n30
d3694a930e
Give frontend access to the hle service interfaces
2018-10-03 19:44:23 +02:00
Sebastian Valle
3790ccc7b2
Merge pull request #4287 from Subv/am_subfile
...
Services/AM: Support using FS subfiles with the CIA-related service functions.
2018-10-03 10:13:46 -05:00
Subv
5165b63512
Services/AM: Support using FS subfiles with the CIA-related service functions.
...
FS subfiles are created with File::OpenSubFile, they have a start offset that must be added to all read/write operations.
The implementation in this commit is done using a new FileBackend that wraps the FS::File along with the start offset.
2018-10-03 09:57:05 -05:00
bunnei
2d116607fe
Merge pull request #4288 from Subv/am_system_mutex
...
Services/AM: Implement the GetSystemUpdaterMutex function.
2018-10-02 11:14:04 -04:00
Valentin Vanelslande
b067b5aa5a
Implement SeedDB & Seed Crypto
2018-10-02 10:12:40 -05:00
Subv
7aa97198a3
Services/AM: Implement the GetSystemUpdaterMutex function.
...
This function just returns a Mutex.
2018-10-02 09:07:00 -05:00
NarcolepticK
32aecd42a2
LLE Mapped Buffer: Corrected behavior
2018-10-01 21:07:25 -04:00
Weiyi Wang
fceec34945
Merge pull request #4278 from wwylele/cfg-ptm-direct-fs
...
cfg, ptm: access FS via backend directly
2018-10-01 18:32:43 -04:00
Weiyi Wang
0e77cd385a
Merge pull request #4277 from wwylele/cecd-direct-fs
...
cecd: access FS via backend directly
2018-10-01 18:26:51 -04:00
Weiyi Wang
fb720c00b7
Merge pull request #4273 from wwylele/apt-direct-fs
...
APT: access FS via backend directly
2018-10-01 14:24:06 -04:00
Weiyi Wang
5fb3137bdc
Merge pull request #4181 from wwylele/cia-crypto
...
Add encrypted CIA support
2018-10-01 14:23:35 -04:00
NarcolepticK
51d53a6281
LLE Mapped Buffer: addressed comments
2018-09-30 23:23:21 -04:00
NarcolepticK
19291ba465
LLE Mapped Buffer: Add unmapping, zero-size, and multiple page handling
2018-09-30 22:34:13 -04:00
bunnei
27203c0d47
Merge pull request #4274 from wwylele/http-direct-fs
...
http_c: access FS via backend directly
2018-09-30 21:37:07 -04:00
Weiyi Wang
edc6e419b0
Merge pull request #4232 from wwylele/multi-region
...
loader, cfg: choose region based on language if multiple regions available
2018-09-29 23:01:36 -04:00
Weiyi Wang
f5a3ec18c2
Merge pull request #4072 from B3n30/httpc3
...
Service::HTTP_C: Implement Client Cert opening and closing
2018-09-29 22:53:49 -04:00
Lioncash
d64094a0d2
kernel/object: Remove unnecessary std::move from DynamicObjectCast()
...
boost::static_pointer_cast for boost::intrusive_ptr (what SharedPtr is),
takes its parameter by const reference. Given that, it means that this
std::move doesn't actually do anything other than obscure what the
function's actual behavior is, so we can remove this. To clarify, this
would only do something if the parameter was either taking its argument
by value, by non-const ref, or by rvalue-reference.
2018-09-29 23:14:10 +02:00
Weiyi Wang
bcb5d438a9
cfg: access FS via backend directly
2018-09-28 17:32:05 -04:00
Weiyi Wang
2757eff122
ptm: access FS via backend directly
2018-09-28 17:21:45 -04:00
Weiyi Wang
b03332d09b
fs: remove ArchiveFactory_ExtSaveData::Initialize
...
This is unnecessary as any open archive would create the full path for themselves
2018-09-28 17:08:39 -04:00
Weiyi Wang
bb252ecab3
cecd: access FS via backend directly
2018-09-28 17:03:24 -04:00
Weiyi Wang
0bc98cdca4
http_c: access FS via backend directly
2018-09-28 14:25:19 -04:00
Weiyi Wang
94b273ac20
APT: access FS via backend directly
2018-09-28 14:08:30 -04:00
zhupengfei
ae5c658997
movie: Add clock init time to CTM header
...
This adds a clock init time field to the CTM header. The clock settings would be overridden when playing a movie. And when recording a movie, if the clock is set to System Time, it would be set to fixed init time at the current moment as well. In this way this keeps consistency with the RNG even if the user does just no setting.
2018-09-27 22:18:10 +08:00
Weiyi Wang
892ca2a94a
Merge pull request #4209 from zhaowenlan1779/play-coin
...
service/ptm, citra_qt: Add Play Coins setting
2018-09-27 10:09:02 -04:00
Weiyi Wang
08bfba5d8e
Merge pull request #4005 from NarcolepticK/stub-cecd
...
service/cecd: Implement some functions
2018-09-27 10:08:14 -04:00
Weiyi Wang
f05740a5fd
Merge pull request #4224 from FearlessTobi/port-1310
...
Port #734 and #1310 from yuzu: Changes to Thread-related enums
2018-09-25 23:07:43 -04:00
Weiyi Wang
9668852c0d
Service/AM: handle encrypted CIA
2018-09-23 13:05:55 -04:00
Pengfei Zhu
6b538a49ac
Merge pull request #4246 from FearlessTobi/port-1346
...
Port yuzu-emu/yuzu#1346 : "svc_wrap: Convert the PARAM macro into a function"
2018-09-23 13:10:11 +08:00
Weiyi Wang
20e42592ff
Merge pull request #4249 from FearlessTobi/port-760
...
Port yuzu-emu/yuzu#760 : "file_util: Use an enum class for GetUserPath()"
2018-09-22 23:42:59 -04:00
Lioncash
d2cd4a464d
svc_wrap: Convert the PARAM macro into a function
...
This can just be a regular function, getting rid of the need to also
explicitly undef the define at the end of the file. Given FuncReturn()
was already converted into a function, it's #undef can also be removed.
2018-09-22 21:20:22 +02:00
Lioncash
b3221c3180
file_util: Use an enum class for GetUserPath()
...
Instead of using an unsigned int as a parameter and expecting a user to
always pass in the correct values, we can just convert the enum into an
enum class and use that type as the parameter type instead, which makes
the interface more type safe.
We also get rid of the bookkeeping "NUM_" element in the enum by just
using an unordered map. This function is generally low-frequency in
terms of calls (and I'd hope so, considering otherwise would mean we're
slamming the disk with IO all the time) so I'd consider this acceptable
in this case.
2018-09-22 21:18:56 +02:00
Lioncash
46da908a00
service: Use nested namespace specifiers where applicable
...
There were a few places where nested namespace specifiers weren't being
used where they could be within the service code. This amends that to
make the namespacing a tiny bit more compact.
2018-09-22 16:14:10 +02:00
Weiyi Wang
41d53cee1f
nwm/uds_data: specify endianness for enum
2018-09-22 00:28:44 -04:00
Weiyi Wang
e0336403ee
nwm/uds_connection: specify endiannes for enum
2018-09-22 00:28:44 -04:00
Weiyi Wang
16b36b6025
service/cro: specify endianness for enum
2018-09-22 00:28:44 -04:00
Weiyi Wang
18e94897c4
hle/swkbd: specify endianness for enum and other members
2018-09-22 00:28:44 -04:00
Weiyi Wang
d1a576eb14
Merge pull request #4113 from namkazt/soc_recv_from
...
fix soc service - RecvFrom - SendTo
2018-09-21 12:33:23 -04:00
Weiyi Wang
e9ed1c98da
Merge pull request #4114 from namkazt/soc_recv_from_other
...
Implement soc - RecvFromOther
2018-09-21 12:33:12 -04:00
fearlessTobi
3ee9f669c1
Address review comments
2018-09-21 16:39:10 +02:00
James Rowe
687e3e74ca
Merge pull request #3959 from zhaowenlan1779/semi-reset
...
service/apt: Implement soft reset & CloseApplication
2018-09-19 21:02:59 -06:00
Weiyi Wang
697bc1a9c7
loader, cfg: choose region based on language if multiple regions available
2018-09-18 10:26:31 -04:00
Lioncash
5ddd382a9b
kernel/svc: Do nothing if svcOutputDebugString's length is <= 0
...
While likely very uncommon, this sanitizes the input and does nothing in
the event of the length being equal to or less than zero, avoiding
constructing a std::string when there's no need to. It also avoids an
out-of-memory scenario, as a negative value would wrap around to its
equivalent unsigned representation in std::string's constructor.
e.g. If someone was silly and a length of -1 was specified, this would
make a string with a length of 0xFFFFFFFFFFFFFFFF on a 64-bit platform,
which will obviously eventually fail due to the allocation being way too
large.
2018-09-17 19:52:53 -04:00
Lioncash
ca3d9d659e
kernel/thread: Include thread-related enums within the kernel namespace
...
Previously, these were sitting outside of the Kernel namespace, which
doesn't really make sense, given they're related to the Thread class
which is within the Kernel namespace.
2018-09-15 17:16:20 +02:00
Lioncash
5dfa7b74b5
thread: Convert ThreadStatus into an enum class
...
Makes the thread status strongly typed, so implicit conversions can't
happen. It also makes it easier to catch mistakes at compile time.
2018-09-15 17:02:44 +02:00
zhupengfei
458f8d103b
service/ptm: Add Get/SetPlayCoins functions
2018-09-14 22:28:38 +08:00
Valentin Vanelslande
dce26367a2
ipc: fix typo
2018-09-13 11:51:08 -05:00
NarcolepticK
0d15b99bfc
service/cecd: Corrected cecd:s function table
2018-09-11 14:39:48 -04:00
NarcolepticK
105bcc95c0
service/cecd: Add hmac handling
2018-09-10 19:53:23 -04:00
NarcolepticK
192a0f3b92
service/cecd: Update handling of /outbox/boxinfo and /outbox/obindex
2018-09-10 04:21:24 -04:00
Valentin Vanelslande
5c4da2d218
svc: change unknown to thread in CreateThread
2018-09-08 07:40:24 -05:00
NarcolepticK
648cecf1aa
service/cecd: Utilize CryptoPP::Base64Encoder for message id
2018-09-07 23:09:14 -04:00
zhupengfei
ad6b140cb0
service/apt: Implement soft reset & CloseApplication
2018-09-08 11:05:23 +08:00
NarcolepticK
ff1beca74a
service/cecd: Fixed enum item naming style
2018-09-07 19:36:33 -04:00
Weiyi Wang
7d8f115185
Prefix all size_t with std::
...
done automatically by executing regex replace `([^:0-9a-zA-Z_])size_t([^0-9a-zA-Z_])` -> `$1std::size_t$2`
2018-09-06 16:03:28 -04:00
Merry
eca98eeb3e
Merge pull request #4143 from zhaowenlan1779/shared-font-text-fix
...
core, citra_qt: unify status of system archives and shared fonts
2018-09-06 20:51:32 +01:00
NarcolepticK
69b3217394
service/cecd: Addressed comments, code cleanup
2018-09-06 15:50:27 -04:00
NarcolepticK
c89759f597
service/cecd: Corrected eventlog.dat creation
2018-09-06 15:50:27 -04:00
NarcolepticK
c185c35bc2
service/cecd: Clang format fixup
2018-09-06 15:50:27 -04:00
NarcolepticK
dd7234a6d0
service/cecd: Migrate Common::StringFromFormat(...) to fmt::format(...)
2018-09-06 15:50:27 -04:00
NarcolepticK
25e7209d5c
service/cecd: Updated function names
2018-09-06 15:50:27 -04:00
NarcolepticK
7a8477d106
service/cecd: Implement mboxlist handling
2018-09-06 15:50:27 -04:00
NarcolepticK
0e8398b51c
service/cecd: Update header checks and increased debug logging
2018-09-06 15:50:27 -04:00
NarcolepticK
71204e525f
service/cecd: Corrected behaviour, started checking and updating file headers
2018-09-06 15:50:27 -04:00
NarcolepticK
d88ad61da4
service/cecd: Output icon to MBoxData.001 and title to MBoxData.010
2018-09-06 15:50:27 -04:00
NarcolepticK
010fbd8614
service/cecd: Update default values for in/out box info header
2018-09-06 15:50:27 -04:00
NarcolepticK
d99585aa53
service/cecd: Add MBox directory check to OpenAndRead and OpenAndWrite and added a CreateAndPopulateMBoxDirectory function
2018-09-06 15:50:27 -04:00
NarcolepticK
30bbea3f4e
service/cecd: Add initial files to archive after it is formatted
2018-09-06 15:50:27 -04:00
NarcolepticK
e27c1bd1f5
service/cecd: Addressed comment about PopEnum
2018-09-06 15:50:27 -04:00
NarcolepticK
413f1651b7
service/cecd: Implement basic file handling functions.
2018-09-06 15:50:26 -04:00
NarcolepticK
2ee395d7de
service/cecd: Implement functions
2018-09-06 15:50:26 -04:00
NarcolepticK
5dacf92fd7
service/cecd: Stub some functions
2018-09-06 15:50:26 -04:00
fearlessTobi
cf8b1726df
Address review comments
2018-09-06 00:00:21 +02:00
fearlessTobi
cb3ef488c7
Fixup! string_util: Remove StringFromFormat() and related functions
2018-09-06 00:00:21 +02:00
Lioncash
3284bef360
string_util: Remove StringFromFormat() and related functions
...
Given we utilize fmt, we don't need to provide our own functions for formatting anymore
2018-09-06 00:00:21 +02:00
B3n30
dfb82b4dfd
fixup! fix num_client_certs in CloseClientCertContext
2018-09-04 08:16:25 +02:00
Nguyen Dac Nam
a8af14ad12
change buffer index from 1 to 0.
2018-09-04 09:41:34 +07:00
Weiyi Wang
ae6007bf9d
Merge pull request #4069 from B3n30/wait_for_service_register
...
Service::SM: Wait till client is registered
2018-09-04 01:57:28 +03:00
Weiyi Wang
fffa55b5d8
Merge pull request #4139 from tgsm/hid-update-table
...
Service/HID: update function table
2018-09-04 01:47:26 +03:00
B3n30
cfd81be661
fixup! fixup! Service::SM: Wait till client is registered
2018-09-02 22:50:13 +02:00
B3n30
ae37b404c6
fixup! fixup! Service::SM: Wait till client is registered
2018-09-02 16:42:41 +02:00
Lioncash
c47e1db46d
kernel/object: Tighten object against data races
...
Despite being covered by a global mutex, we should still ensure that the
class handles its reference counts properly. This avoids potential
shenanigans when it comes to data races.
Given this is the root object that drives quite a bit of the kernel
object hierarchy, ensuring we always have the correct behavior (and no
races) is a good thing.
2018-08-31 00:14:48 +02:00
tgsm
7136777fec
Service/HID: update function table
...
update
2018-08-29 17:51:47 -04:00
zhupengfei
f28bc28d6b
core, citra_qt: unify status of system archives and shared fonts
...
Shared fonts is no different from any other system archives, and there is not really any point to make a separate status for it. This also fixes the incorrect error message that was introduced when I made the UI text improvements.
2018-08-27 22:40:35 +08:00
Ben
b20607dfc6
Add system time configuration ( #4043 )
...
* Add setting to switch between a fixed start time and the system time
Add clock settings to SDL
Make clock configureable in qt
Add a SharedPage handler class
Init shared_page_handler for tests
2018-08-26 11:47:45 -06:00
Merry
9b9227089b
Merge pull request #4121 from FearlessTobi/port-894
...
Port #894 from yuzu: "kernel: Move object class to its own source files"
2018-08-26 00:02:33 +01:00
fearlessTobi
8fceac801c
Fix clang-format
2018-08-25 14:05:59 +02:00
Merry
cf4f8463f1
Merge pull request #4122 from FearlessTobi/port-905
...
Port #905 from yuzu: "kernel/vm_manager: Minor changes"
2018-08-24 19:01:57 +01:00
Merry
f2816aa430
Merge pull request #4123 from FearlessTobi/port-914
...
Port #914 from yuzu: "kernel/process: Use accessors instead of class members for referencing segment array"
2018-08-24 19:01:07 +01:00
zhaowenlan1779
642f0bd62b
Port "kernel/event: Make data members private" from yuzu ( #4077 )
...
* kernel/event: Make data members private
Instead we can simply provide accessors to the required data instead of
giving external read/write access to the variables directly.
* fix compile error
2018-08-24 19:43:28 +02:00
zhaowenlan1779
75927ee462
Port "client_port: Make all data members private" from yuzu ( #4064 )
...
* client_port: Make all data members private
These members don't need to be entirely exposed, we can instead expose
an API to operate on them without directly needing to mutate them
We can also guard against overflow/API misuse this way as well, given
active_sessions is an unsigned value.
* make the condition an assert
2018-08-24 19:31:20 +02:00
Lioncash
c786df3e4b
kernel/process: Use std::array where applicable
2018-08-23 18:08:20 +02:00
Lioncash
37e78de206
kernel/process: Use accessors instead of class members for referencing segment array
...
Using member variables for referencing the segments array increases the
size of the class in memory for little benefit. The same behavior can be
achieved through the use of accessors that just return the relevant
segment.
2018-08-23 18:08:03 +02:00
Lioncash
469ed4a09f
kernel/vm_manager: Convert loop into std::any_of()
2018-08-23 17:53:37 +02:00
Lioncash
c7e1dab45b
kernel/vm_manager: Use const where applicable
...
Makes our immutable state explicit.
2018-08-23 17:53:20 +02:00
Lioncash
bb88c3b7b5
kernel/vm_manager: Use the VAddr type alias in CarveVMA()
...
These two variables correspond to address ranges.
2018-08-23 17:39:18 +02:00
Lioncash
63c7b44ba8
kernel: Move object class to its own source files
...
General moving to keep kernel object types separate from the direct
kernel code. Also essentially a preliminary cleanup before eliminating
global kernel state in the kernel code.
2018-08-23 17:31:59 +02:00
Nguyen Dac Nam
41f256f3cd
fix clang-format
2018-08-21 22:22:50 +07:00
Nguyen Dac Nam
8d98a387ac
only get src_adr if input_adr available
2018-08-21 21:39:45 +07:00
Nguyen Dac Nam
0e89555a89
only get src_adr if input_adr available
2018-08-21 21:33:19 +07:00
Nguyen Dac Nam
e8bb79be2d
do not init and copy to ctr_dest_addr unless have data
2018-08-21 20:51:13 +07:00
Nguyen Dac Nam
3b736a72a5
fix clang-format
2018-08-21 13:45:28 +07:00
Nguyen Dac Nam
c5eec5656d
add RecvFromOther cmd
2018-08-21 13:40:11 +07:00
Nguyen Dac Nam
2cb979ed29
add header RecvFromOther
2018-08-21 13:38:14 +07:00
Nguyen Dac Nam
fc8c199895
fix soc service - RecvFrom crash on Citra but not on 3DS
2018-08-21 12:59:02 +07:00
Nguyen Dac Nam
7d8569d799
fix soc service - Fcntl failed on validate header
2018-08-21 12:14:18 +07:00
Weiyi Wang
1b1439c6af
NWM_UDS: use sizeof(<var being used>) instead of hard-coded type ( #4093 )
...
* NWM_UDS: use sizeof(<var being used>) instead of hard-coded type
Intend to fix #4090 .
` node_map.node.second` type was changed to `u16` in #3985 . However the type change wasn't reflected here. Should have used variable name instead to automatically do type change
* NWM_UDS: ... and also the node.first one
* NWM_UDS: ... and here
* Network: bump version because we changed UDS packet layout
* Update nwm_uds.cpp
2018-08-12 22:47:48 +02:00
Merry
44fc338f21
Merge pull request #4083 from zhaowenlan1779/port-yuzu-904
...
Port "kernel/thread: Minor changes" from yuzu
2018-08-10 21:08:22 +01:00
Lioncash
39d5ada4e1
kernel/thread: Remove unimplemented function prototype
...
Given there's no implementation, we may as well remove the code
entirely.
2018-08-10 17:05:01 +08:00
B3n30
10ef3109a4
fix num_client_certs in CloseClientCertContext
2018-08-10 09:55:59 +02:00
Lioncash
596caf70b7
kernel/thread: Make GetFreeThreadLocalSlot()'s loop indices size_t
...
Avoids using a u32 to compare against a range of size_t, which can be a
source of warnings. While we're at it, compress a std::tie into a
structured binding.
2018-08-10 10:13:50 +08:00
Lioncash
893d9c5ff3
kernel/thread: Make GetFreeThreadLocalSlot() reference parameter a const reference
...
This function only reads the data being referenced, it doesn't modify
it, so we can turn the reference into a const reference.
2018-08-10 10:13:49 +08:00
Lioncash
c71c9e63ec
kernel/thread: Make GetFreeThreadLocalSlot() internally linked
...
This function isn't used outside of this translation unit, so we can
make it internally linked.
2018-08-10 10:13:48 +08:00
B3n30
c431b922d0
fix error code comment
2018-08-09 23:55:04 +02:00
B3n30
c6bdcf72a4
service::HTTP_C: Implement OpenClientCertContext, OpenDefaultClientCertContext, CloseClientCertContext
2018-08-09 23:05:09 +02:00
Ben
5e658efdb8
Service::HTTP_C: Add decryption of the ClCertA ( #4045 )
...
* Service::HTTP_C: Add decryption of the ClCertA
* fixup! Service::HTTP_C: Add decryption of the ClCertA
* fixup! Service::HTTP_C: Add decryption of the ClCertA
* FileSys:: Add MakeNCCHArchivePath and MakeNCCHFilePath; Small fixes in HTTP_C::DecryptDefaultClientCert
* fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA
* fixup! fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA
2018-08-09 23:02:53 +02:00
BreadFish64
d09646ab9d
citra-qt: service: add convenient LLE service module configuration ( #3967 )
...
* citra-qt: service: add convenient LLE service module configuration
* fix SDL settings
* unexpose AttemptLLE
* static
* fix array includes
* use default with writesetting
2018-08-09 21:10:11 +02:00
James Rowe
cc6d3ce22f
Merge pull request #4053 from Steveice10/master
...
am: Corrections to handling of non-existent content indices.
2018-08-09 09:39:44 -06:00
B3n30
aa98e55a88
fixup! Service::SM: Wait till client is registered
2018-08-08 23:42:45 +02:00
B3n30
02a3b5ae2b
Service::SM: Wait till client is registered
2018-08-08 23:30:48 +02:00
Ben
8ae126eb33
Merge pull request #4001 from Subv/http2
...
Services/HTTP: Corrected some error codes and added a few new ones.
2018-08-08 15:37:33 +02:00
Subv
b72e7d48e8
Service/HTTP: Added logs to some of the error conditions.
2018-08-08 08:32:46 -05:00
Steveice10
4c3961d5dd
am: Correct ListDLCContentInfos index bounds.
2018-08-04 01:27:05 -07:00
Steveice10
d93ed644f6
am: Return empty path string for non-existent content indices.
2018-08-04 01:03:29 -07:00
Subv
79db1f8b49
Service/HTTP: Log the PIDs in the Initialize functions.
2018-08-03 15:24:26 -05:00
James Rowe
c35a251d86
Merge pull request #3985 from BreadFish64/fix-warnings
...
core: clean up warnings
2018-08-02 11:14:57 -06:00
Weiyi Wang
14bc20fc8d
Merge pull request #3996 from NarcolepticK/dsp-remove-weakptr
...
service/dsp: Clean up global state
2018-08-02 11:14:59 +03:00
BreadFish64
74cd98ecad
core: clean up warnings
2018-08-01 14:10:23 -05:00
Merry
6a9e18a49a
Merge pull request #4022 from zhaowenlan1779/port-yuzu-837
...
Port yuzu-emu/yuzu#837 from yuzu
2018-08-01 15:01:17 +01:00
Lioncash
8e103d0675
kernel/timer: Make data members private where applicable
...
Instead, we can just expose functions that return the queryable state
instead of letting anything modify it.
2018-08-01 17:49:52 +08:00
James Rowe
05eb0ccb03
Merge pull request #4014 from wwylele/old-service
...
service: remove deprecated service interface
2018-07-30 11:31:54 -06:00
Weiyi Wang
71729fd47a
Merge pull request #3951 from zhaowenlan1779/cfg-country-code
...
service/cfg, citra_qt: add country code configuration
2018-07-30 12:02:07 +03:00
Merry
f4a389dca5
Merge pull request #4023 from zhaowenlan1779/port-yuzu-797
...
Port yuzu-emu/yuzu#797 from yuzu
2018-07-30 08:28:35 +01:00
Lioncash
661f7bbcfd
core: Make converting constructors explicit where applicable
...
Avoids unwanted implicit conversions. Thankfully, given the large amount
of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-30 08:21:13 +08:00
NarcolepticK
8f70e9a318
service/dsp: Addressed comments about function name and pointer type
2018-07-29 15:18:30 -04:00
Ben
04bd104c4a
Merge pull request #3992 from Subv/applets_close
...
Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet
2018-07-29 10:34:32 +02:00
Weiyi Wang
383cde84d3
Merge pull request #3917 from Steveice10/master
...
am: Fix DLC loading.
2018-07-28 18:48:28 +03:00
wwylele
323313b2e9
service: remove deprecated service interface
2018-07-27 21:22:15 +03:00
NarcolepticK
5c52c6e64a
service/boss: Migrate to ServiceFramework ( #3998 )
...
* service/boss: Migrate to ServiceFramework
* service/boss: Addressed comments
* service/boss: Added TODO: verify ResetType
2018-07-27 16:07:23 +03:00
NarcolepticK
5a4ed10982
service/csnd: Moved into csnd folder and stubbed a few functions ( #4006 )
...
* service/csnd: Moved into csnd folder and stubbed a few functions
* service/csnd: Addresed comment about missing rb.Skip
2018-07-27 11:25:20 +03:00
Weiyi Wang
719bec84cd
Merge pull request #4007 from B3n30/romfs_file
...
RomFS: add RomFSFile and RomFS::GetFile
2018-07-27 11:24:31 +03:00
B3n30
123c0886e6
RomFSFile: Default constructor
2018-07-26 13:10:56 +02:00
B3n30
b1f8c2fe67
Remove RomFS::GetFilePointer
2018-07-26 12:59:31 +02:00
B3n30
b62978b5a1
RomFS: add RomFSFile and GetRomFSFile
2018-07-26 12:31:59 +02:00
Subv
d19dbe8419
Services/HTTP: Added error handling to AddRequestHeader
2018-07-25 16:48:04 -05:00
Subv
03294ce6b4
Services/HTTP: Implemented the InitializeConnectionSession function.
2018-07-25 16:13:47 -05:00
Subv
28c296a13b
Services/HTTP: Corrected some error codes and added a few new ones.
...
Use the session data to store information about the HTTP session state.
This is based on reverse engineering of the HTTP module.
The AddRequestHeader function is still mostly incorrect, this will be fixed in follow up PRs
2018-07-25 14:59:29 -05:00
James Rowe
e4d65927c2
Merge pull request #3991 from zhaowenlan1779/no-lle-applets
...
applet_manager: disable loading LLE applets
2018-07-25 09:54:02 -06:00
James Rowe
9d95373282
Merge pull request #3999 from NarcolepticK/stub-service-ps
...
service/ps: Boilerplate to register service, no functions implemented
2018-07-25 09:52:45 -06:00
Sebastian Valle
472ee00e8f
Merge pull request #3981 from B3n30/httpc
...
Migrate HTTP_C to the ServiceFramework and implement functions
2018-07-25 10:20:27 -05:00
NarcolepticK
081becc9f5
service/ps: Boilerplate to register service, no functions implemented
2018-07-25 02:25:51 -04:00
B3n30
050d116cb6
Fixed include in http_c,h; added ERROR_CONTEXT_ERROR to CreateContext
2018-07-24 23:38:19 +02:00
NarcolepticK
b840c63386
service/dsp: Clean up global state
2018-07-24 16:15:37 -04:00
Subv
cce882b688
Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet.
...
This allows LLE library applets (like swkbd) to properly close and return to the application instead of hanging.
There is still a bug in our rasterizer cache that may cause crashes some time after an applet is closed, but that is tangential to this change and should be tackled separately.
2018-07-24 14:50:19 -05:00
zhupengfei
44db59be2b
applet_manager: disable loading LLE applets
...
Currently LLE applets cannot exit properly in Citra and causes Citra to hang. We are already providing HLE for applets, and the LLE applets are preventing users who dumped their system files from using the applets correctly. Before the further fix is done, I think we should temporaily disable loading LLE applets.
2018-07-24 23:24:27 +08:00
B3n30
daac1349db
Service/HTTP_C: Add some comments; Fixed header in CloseContext
2018-07-23 21:14:41 +02:00
B3n30
2f50bf0007
Service/HTTP_C: Fix error in CreateContext
2018-07-23 18:02:35 +02:00
Weiyi Wang
8388e5519b
Merge pull request #3944 from wwylele/soc-new-framework
...
Service/SOC: convert to ServiceFramework
2018-07-22 22:23:05 +03:00
B3n30
2d09355a25
Make Service::HTTP::Context non-copyable
2018-07-22 18:15:44 +02:00
B3n30
5af6a1d8ee
Revert stubbed InitializeConnectionSession
2018-07-22 18:15:44 +02:00
B3n30
32155cd683
Service/HTTP: stubbed InitializeConnectionSession
2018-07-22 18:15:44 +02:00
B3n30
65c7ed8445
Service/HTTP: Moved declarations to the header file
2018-07-22 15:01:32 +02:00
B3n30
0606e7010c
Services/HTTP: Implemented the AddRequestHeader service function.
2018-07-22 13:38:31 +02:00
Subv
799b45233f
Services/HTTP: Stubbed the CloseContext service function.
...
It is currently unknown how the real http module handles trying to close contexts for requests that are already in flight.
2018-07-21 20:11:20 -05:00
Subv
34baa882c8
Services/HTTP: Corrected the error code for an invalid request method.
2018-07-21 19:50:13 -05:00
Subv
70e6979695
Services/HTTP: Implemented the CreateContext function handler.
2018-07-21 19:30:40 -05:00
B3n30
87ec3934a6
Services/HTTP: Added structures to represent an HTTP context.
...
More fields will probably need to be added to these structures in the future.
2018-07-21 19:10:00 -05:00
B3n30
fe5a3d22c5
Services/HTTP: Added structures to store both client and server certificates.
2018-07-21 19:00:50 -05:00
B3n30
1f865fd524
Services/HTTP: Stubbed the Initialize function.
2018-07-21 18:54:06 -05:00
B3n30
28124c053a
Services/HLE: Convert the http:C service to the new service framework.
2018-07-21 18:48:57 -05:00
Alexandre LittleWhite Laurent
578b08c53b
Truncating UTF16 text before converting them toUTF8
2018-07-21 18:17:46 +02:00
James Rowe
2f8c9c8126
Merge pull request #3831 from FearlessTobi/add-volume-slider
...
citra_qt: Add a volume slider
2018-07-18 09:56:47 -06:00
zhupengfei
e61b7d265f
service/cfg, citra_qt: add country code configuration
2018-07-18 20:09:34 +08:00
wwylele
aa02c50a2e
Service/SOC: convert to ServiceFramework
2018-07-18 09:52:51 +03:00
James Rowe
bf6da61da5
Merge pull request #3850 from zhaowenlan1779/swkbd
...
applets/swkbd: Software Keyboard Implementation
2018-07-17 09:02:55 -06:00
zhupengfei
a9e922e68f
service/fs: implement obsoleted Create/DeleteExtSaveData ( #3948 )
...
* service/fs: implement obsoleted Create/DeleteExtSaveData
* service/fs: remove the STUBBED warning
2018-07-17 17:59:42 +03:00
NarcolepticK
c39daa3c01
service/dsp: Migrate to ServiceFramework ( #3915 )
...
* service/dsp: Migrate to ServiceFramework
* service/dsp: Removed redundant buffer copy
* service/dsp: Addressed comment about pushing u32 instead of bool
* service/dsp: Fix clang format
* service/dsp: Addressed comment about minimizing global state
* service/dsp: Addressed comments and fixed log call issue
* service/dsp: Fix missed clang format
2018-07-12 17:54:26 +03:00
Weiyi Wang
edcea90948
Merge pull request #3921 from B3n30/fixGetStartupArgument
...
Fix parameter_size in APT::GetStartupArgument
2018-07-11 11:41:04 +03:00
B3n30
208e789182
Fix error log
2018-07-11 09:00:05 +02:00
zhupengfei
5407ed8b5e
citra_qt/applets/swkbd: QtKeyboard and misc fixes
...
* Addressed comments and removed the applet interface
* swkbd: address @lioncash's comments
* core: more fixes
** Moved registered_swkbd to System
** Removed an usused virtual
** Removed functionality of DrawScreenKeyboard
** Removed src/core/settings.h change
* swkbd: address @lioncash's 2nd review
* swkbd: update logging macro
* QtKeyboard: Make dialog modal and hide help
2018-07-10 12:49:55 +08:00
Steveice10
56488a969d
am: Run clang-format and attribute TODOs.
2018-07-09 16:05:52 -07:00
B3n30
468c689cf4
Set max parameter_size to 0x1000
2018-07-07 18:52:27 +02:00
B3n30
be1ae17c61
Fix parameter_size in GetStartupArgument
2018-07-07 18:38:38 +02:00
Weiyi Wang
01c4f49e75
Merge pull request #3873 from wwylele/nwm-new-framework
...
Service/NWM: convert to ServiceFramwework
2018-07-07 18:44:31 +03:00
Steveice10
ba35079449
am: Revert changes to content index handling.
2018-07-06 17:15:30 -07:00
Steveice10
d67f119589
am: Address review comments.
2018-07-06 14:16:15 -07:00
Steveice10
680c6e694d
am: Correct reported DLC content indices.
2018-07-06 11:00:57 -07:00
Steveice10
142c2b6cfe
am: Correct content index bounds in ListDLCContentInfos.
2018-07-06 10:49:13 -07:00
Steveice10
c1ef7a753a
am: Add contentIndex to documentation for GetTitleContentPath.
2018-07-06 10:47:50 -07:00
Steveice10
630a1311ca
am: Properly handle operations involving content indices.
2018-07-06 00:44:22 -07:00
Steveice10
932eeefff0
am: Correct definition of ContentInfo.
2018-07-05 23:27:47 -07:00
fearlessTobi
a780f3821e
citra_qt: Add a volume slider
2018-07-03 17:26:50 +02:00
NarcolepticK
acefa81ae3
service/csnd: Addressed comments and removed outdated information
2018-07-02 22:09:29 -04:00
NarcolepticK
84c23ce2e5
service/csnd: Fix clang format
2018-07-02 22:09:29 -04:00
NarcolepticK
1f345642c4
service/csnd: Stubbed DataCache functions
2018-07-02 22:09:29 -04:00
NarcolepticK
41d5b31a76
service/csnd: Migrate to ServiceFramework
2018-07-02 22:09:29 -04:00
NarcolepticK
d6f86caf30
service/cecd: Addressed comment about using PushEnum instead of Push<u32>
2018-07-01 12:54:53 -04:00