Compare commits

...

472 Commits
1.0i ... master

Author SHA1 Message Date
5293dfc1a7 Upgrade code signing
This adds support for Microsoft Azure Trusted Signing and removes
signing of the Debug binaries to minimize the Trusted Signing API
volume.

Signed-off-by: Simon Rozman <simon@rozman.si>
2024-11-19 10:49:17 +01:00
2a918254f6 WinStd, stdex, wxExtend: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2024-11-19 10:44:41 +01:00
0f3070033f Stop reusing winstd::eap_attr after moved from
MSVC C26800 warned us an object is not guaranteed to be cleared after
being moved from. At least in std C++ implementations.

Thou winstd does clear all objects after being moved from, we could just
silence C26800 warning. But what if some day winstd behavior changes and
with us having this warning silenced?

std::eap_attr has no clear() method, therefore revert to using scope and
temporary object. It achieves the same effect as clear after moved from
does.

Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-28 14:07:00 +02:00
887129ccc0 WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-28 14:04:59 +02:00
511b8c04ea WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-13 12:39:47 +02:00
a174e42b3b Preset version to 1.3h
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:35:40 +02:00
0ad6f61e15 WinStd, stdex: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
5cffd63cf5 MSI: Install WLANManager.exe to user computer
It was being deployed as a satellite assembly since GÉANT didn't really
use it. For other deployments it proves useful. It is required to run it
on the user computer anyway, so no harm if the WLANManager.exe gets
installed.

Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
3215cc0cc7 Makefile: Discontinue publishing binaries to GitHub
Publishing binaries to https://github.com/Amebis/GEANTLink-dist was a
customer requirement. As GÉANT is no longer deploying GÉANTLink, this
makes no sense any more.

Should anybody require this feature, please contact me.

Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
97958040a3 Makefile: Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
4f69180e3d Update translations from Transifex
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
232b374488 Preset version to 1.3g
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-10-03 19:09:37 +02:00
b049b7eeb8 Set version to 1.3f
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-04-07 08:58:57 +02:00
4d67075ff4 Update translations from Transifex
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-04-07 08:56:55 +02:00
af7bbb5ae4 WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-04-07 08:52:22 +02:00
b0a7c5fd16 Enable MSVC Spectre mitigation
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-21 09:17:11 +01:00
53845c6abe MSI: Simplify ProgramFiles(64)Folder property use
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-14 11:37:33 +01:00
609d55cfeb stdex: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-07 11:46:45 +01:00
a2cab07a30 WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-03 18:02:31 +01:00
831dcf680c wxExtend: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-02 15:43:50 +01:00
52b29a48b8 MSIBuild: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-03-02 15:43:48 +01:00
8304e666a3 MSI: Discontinue prefixed row IDs in tables
humanSimon, is this really you? 😉

Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-15 12:50:30 +01:00
05d51ce6b6 WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-15 12:49:08 +01:00
4ed294171e WinStd, stdex: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-04 14:46:54 +01:00
db34e71705 Move vector_queue from WinStd to stdex
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-04 14:45:07 +01:00
280e9206f2 stdex: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-03 15:42:04 +01:00
47b602e1fa WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-03 15:42:04 +01:00
19c523509b Move Hex from WinStd to stdex
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-03 15:42:04 +01:00
a254dd527a Move Base64 from WinStd to stdex
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-03 14:16:47 +01:00
6f92e82598 WinStd: Update
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-02-03 13:03:59 +01:00
5e7f55880a Update Copyright and build year
Signed-off-by: Simon Rozman <simon@rozman.si>
2022-01-07 11:21:33 +01:00
84fae77ed3 Prepare PDB.zip file locally
The GEANTLink-dist repo is hosted on GitHub and hit the file size limit.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 15:35:36 +01:00
48ef747388 Set version to 1.3e
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 15:06:11 +01:00
4bd38d5d89 Address ICE warnings
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 15:06:11 +01:00
ce2cc15cc6 Discontinue PRODUCT_VERSION
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 14:12:42 +01:00
4ef4ec6f31 Introduce PDB packaging
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 13:48:45 +01:00
358dd021db Hardcode MSIBUILD_OUTPUT_DIR and MSIBUILD_ROOT
KISS!!!

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 13:24:40 +01:00
d0d0174576 MSIBuild: bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 12:32:42 +01:00
b44aeb7a79 Open-code CAB.mak
All other MSI compilations are open-coded but this one.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 12:32:07 +01:00
4c4cb35bce Hardcode output folder name
KISS!!!

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 10:26:55 +01:00
0e7a9c7448 Redirect output files to the output folder
Thou linker can locate the output .lib file of referenced projects
wherever .lib is just fine, this helps us to gather all .pdb files in
the output folder.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 07:20:50 +01:00
0d905f414e Cleanup project files
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-12-01 06:28:32 +01:00
4fce7f58e1 MSIBuild: bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-23 14:52:26 +01:00
174baa36c1 Rebuild credentials if EapPeerBeginSession() did not provide them
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-23 14:11:57 +01:00
67805dc9d1 Add missing data length check
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-23 13:35:48 +01:00
83ad0ef45d Preset version to 1.3d
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-23 10:10:50 +01:00
f144b85047 Set version to 1.3c
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-22 15:42:00 +01:00
b55ddd7d86 Update Copyright and build year
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-22 15:31:23 +01:00
b96ebfbce4 Switch to SPDX license notice
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-22 15:20:57 +01:00
0b7b16396a Include full event source registration in Event Monitor MSI too
Should user install EAP methods other than using GÉANTLink provided MSI
files, the event source was only partially registered causing incomplete
event display.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-22 15:20:56 +01:00
12ef3059e9 Backport EAPSup code changes
This introduces some PEAP/EAP-TTLS split code, but helps maintain shared
code base.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-22 15:20:56 +01:00
1994da974a Backport EAPSup project changes
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-20 08:17:12 +01:00
2862faba73 Fix UTF-8 encoding
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-20 08:14:44 +01:00
ddf6ce6997 Update translations from Transifex
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-19 16:18:16 +01:00
e1707cfb01 Use environment to detect MSI tools path
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-19 15:58:57 +01:00
b00f379655 Resolve charset .idtx/.idt confusion
NMake inline files are always created using ACP. The "1252" in the .idtx
header has no effect on this. However, we must encode the .idt files
using correct charset/codepage regardless the ACP being used on the
building machine.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-19 15:55:31 +01:00
44e02e51e3 Remove excessive semicolon 2021-11-19 15:48:48 +01:00
1f6716b279 Cleanup WINSTD_NOVTABLE/__declspec(novtable)
This was originally intended as a compiler hint.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-19 15:48:06 +01:00
71976a8a0b wxExtend: bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-11-19 15:46:04 +01:00
78478a203f Delegate memory leak detection to CRT
_CrtDumpMemoryLeaks() direct call misreports heap allocations owned by
globally initialized objects.

Using _CRTDBG_LEAK_CHECK_DF delays the memory leak check until after
globally initialized objects are destroyed.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:46:00 +02:00
682dc048e9 Migrate manual DLL registration to DllRegisterServer()
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:45:44 +02:00
51fa08cc71 wxExtend: bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:40:15 +02:00
2e9f073e94 Fix Events project and move .rc to res
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:40:15 +02:00
dd9cd83400 Output error text when event information retrieval fails
In some cases Event Monitor reported blank event text. I am suspecting
the TdhGetEventInformation() fails for some reason resulting in a silent
failure to return event text.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:40:15 +02:00
d113388a69 Remove TortoiseGit settings
Git client choice is not a thing of the repository, but individual
developer.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-06-29 15:40:14 +02:00
d62089d5bd Fix initial keyboard focus
After rearranging the configuration dialog panels, the inner
authentication (PAP) is no longer the topmost panel/control.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-05-13 09:07:54 +02:00
a6bdb42ece Deprecate encrypted BLOB checksum
The MD5 checksum was calculated on unencrypted data. This offered a
possibility for a dictionary attack.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-05-13 08:26:07 +02:00
7897d0716c MSIBuild: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-05-13 07:33:42 +02:00
842f46dac8 Pre-set version to 1.3b
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-20 16:38:53 +02:00
b2373c10c7 Import translations from Transifex
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-20 16:17:27 +02:00
3f4afdcb9a Add support for Romanian
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-20 16:17:27 +02:00
45ee84f9ac Hide GTC response while typing
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-20 11:28:49 +02:00
96b104f0a6 Prevent empty GTC responses
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-20 11:28:49 +02:00
8b8690c71a Touch-up radio button and checkbox spacing
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-17 15:48:41 +02:00
d945ccac73 Prevent empty credentials
Always require identity (username).

Zero passwords are no security. Prevent zero passwords too.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-17 14:56:26 +02:00
63db62453a Add TortoiseGit settings
This unifies language (spell-checking), Signed-off-by requirement and
icon branding across all clones and working copies.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-17 14:45:47 +02:00
a7dc7d2525 Make Wingdings icons non-localizable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-17 07:01:11 +02:00
ae0085cfdf Update documentation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-14 11:19:52 +02:00
fdc1e5cb73 Resolve C5205 warning
Reference: https://developercommunity.visualstudio.com/content/problem/893960/compiling-atlsecurityh-raises-several-c5205-warnin.html
Reference: https://developercommunity.visualstudio.com/idea/937938/msvc-version-1650-preview-20-introduces-a-new-c-wa.html
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-04-14 08:51:34 +02:00
9671daecf4 Update documentation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-16 10:12:55 +01:00
7d53ec52b7 Makefile: PackageGUID.mak moved to %TEMP%
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 13:48:31 +01:00
709a9e8709 Makefile: Stop digitally signing intermediate packaging files
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 13:48:31 +01:00
e8ff739ca5 Makefile: Simplify intermediate packaging filenames
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 13:30:54 +01:00
5b452a25fe Makefile: Optimize cleaning
NMAKE invocations are costly (slow, no-parallel support).

Rather than pinpoint cleaning of each combination of $(LANG), $(PLAT)
and $(CFG) related files, we do the wildcard cleaning of all packaging
files.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 13:28:14 +01:00
90e21bd6e6 Makefile: Optimize building
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 13:28:13 +01:00
8b9d99a944 Pre-set version to 1.3a
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-03-03 12:47:15 +01:00
c81af549bf Set version to 1.3
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 14:12:59 +01:00
1286bd0b87 Automate source publishing
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 14:12:59 +01:00
f0e2d2d40d Revert back to "x64" platform designation of deliverables
Renaming MSI and other output files just to unify platform designation
doesn't justify the cause. Not to break other people's installers, the
"AMD64" was renamed back to "x64" in output filenames.

This partially reverts 152e3a9176203b0cc953bd55b1118caf75045c4a.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 13:37:19 +01:00
3fc0f89291 wxExtend: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 10:39:48 +01:00
96fede14ed Pull translations from Transifex
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 10:14:30 +01:00
aadd1c8472 MSI: Change upgrade GUID and perform major upgrade
As component GUIDs changed, but the component path remained, the minor
update will no longer work correctly.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 09:50:34 +01:00
14726b14d4 Makefile: Revise language list
To speed up building, remove untranslated and severly undertranslated
languages: Bulgarian, Czech, Welsh, Basque, Finnish, French, Gaelish,
Icelandic, Korean, Lithuanian, Dutch, Russian, Slovak, Swedish,
Vietnamese

Enable already translated, but overlooked languages: Hungarian,
Portuguese (Portugal), Turkish

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 09:33:38 +01:00
9c50c949b1 wxExtend: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 08:22:21 +01:00
61d3ef43ad WinStd: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-28 08:22:03 +01:00
152e3a9176 Unify platform designations
- .sln uses the same as .vcxproj and Makefile
- Output MSI files use the same as %PROCESSOR_ARCHITECTURE%

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-08 08:23:08 +01:00
ddaf4cc598 EAPMethods: Move build and src files one folder up
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 15:44:47 +01:00
8c2225992e TLS: Revise Schannel flags
- SCH_USE_STRONG_CRYPTO is now declared in the Windows SDK included with
  Visual Studio 2019. No need to enter this flag numerically any more.

- m_sc_ctx.initialize() and m_sc_ctx.process() should use same flags.
  They are actually. Rather than copy&paste them, declare them in a
  single place.

- Add ISC_REQ_USE_SUPPLIED_CREDS flag. Use the client certificate we
  supply or none at all.

- Add ISC_REQ_MANUAL_CRED_VALIDATION flag. We validate the server
  certificate.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:59 +01:00
dedaee0693 UI: Upgrade wxFromBuilder
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:59 +01:00
fdb1340b9d EAP-GTC UI: Prevent wxChoicebook from stretching pages
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:59 +01:00
f98996c13d UI: Reorder outer and inner configuration panels
This follows the natural workflow.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:58 +01:00
0aab5f2e94 UI touch-up
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:58 +01:00
8d42db2f56 TLS: Use protocol version enabled on the system by default
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:58 +01:00
4dad574377 Rename StdAfx.h to PCH.h
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:58 +01:00
cd0a99c518 wxUICanceller: Move upstream and make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:58 +01:00
3bd2d1fd09 credentials_tls: Update documentation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
d4c01a5345 config_method_tls: Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
6e97a04bfe credentials_tls: Keep thumbprint rather than client certificate
By storing the client certificate the certificate became detached from
its private key stored in user certificate store. This rendered client
certificates useless for client TLS authentication.

Now, the client certificate thumbprint is stored instead. The client
certificate is looked up in the user certificate store as required.

This breaks profile XML and BLOB backward compatibility. Since the
client certificate support was broken, nobody probably used those in
the settings before.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
75488ba870 credentials: Move user impersonation to peer::get_identity()
To retrieve user credentials, EapHost provides us the interactive user's
token we can use to impersonate.

By doing the impersonation early in peer::get_identity(), we don't need
to pass the token down the lower methods. This is rather a
simplification than a performance optimization.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
e2eb41e811 credentials_tls: Use WinCrypt to get client certificate name
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
e8b1e157d9 module: Make make_config() pure virtual
It is important to implement this method in derived classes. When we
provided default implementation returning NULL, introducing new methods
might leave this method not implemented without a compiler error.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
6511d826a0 peer: Move all generic methods upstream from peer_tls_base
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:57 +01:00
33e765adcd Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:56 +01:00
5b02352f1a Resolve the make_...() methods
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:56 +01:00
5195b79eed method_ttls: Reintroduce
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:56 +01:00
d400901c52 Rename peer_tls to peer_tls_base
peer_tls is actually not a complete EAP-TLS implementation.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:38 +01:00
570eb83558 peer_tls: Move all applicable methods upstream to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:38 +01:00
db056f5150 Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:38 +01:00
1d558c939e Rename method_tls_tunnel to method_tls and move upstream
CRL checking was also moved upstream as method_tls triggers it.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:10:37 +01:00
5c0299197b method_defrag: Move upstream to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
383a85c18b method: Merge with method_tunnel
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
3fa48c3650 MSIBuild: Bump
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
c40f71462f ui_context: Merge with ui_context_tls_tunnel
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
bef455e5a6 method_defrag: Check minimum send packet size and revise the calculation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
737f51b815 method_tls_tunnel: Cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:43 +01:00
7706e54294 method_tls_tunnel: Revise inner response packet generation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
d2a0c034c1 method_tls_tunnel: Declare authentication success according to EAP
It is usually the outer EAP-Success/Failure message that confirm the
authentication is gracefully over.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
1290d83b9d method_eapmsg: Let inner method handle EAP-Identity packets
With EapHost inner method, this is a must.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
b2edd74270 Introduce localization catalog domain name
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
0a280975fb Rename method_ttls => method_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
1e9e5a99c3 peer_ttls: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:09:42 +01:00
41c2be77f5 Make EAP method logging dynamic
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
4331de8605 wxTTLSConfigPanel: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
bacd4fd8d8 Rename wxTTLSConfigPanel and move upstream
wxTTLSConfigPanel is about anonymizing inner identity and was renamed to
wxEAPIdentityConfigPanel and moved upstream to make reusable.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
18184a2762 peer_ui: Move config_xml2blob and config_blob2xml upstream
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
fb8ca2de24 Rename ui_context_ttls => ui_context_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
248e15641a config_method_ttls: Split to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:28 +01:00
a943a14d0f Rename credentials_ttls => credentials_tls_tunnel to make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:08:27 +01:00
04e6b7064f EapHost: Enable inner methods
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
3e04ca5181 EapHost: Fix EapHostPeerGetSendPacket() call
The packet buffer returned by EapHostPeerGetSendPacket() shall not be
freed.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
017766cb29 EapHost: Disambiguate from native EAP methods
When eap::config_method_eaphost::get_method_id() returns EAP-MSCHAPv2,
XML-to-BLOB gets confused and picks native EAP-MSCHAPv2 implementation.
Therefore, it was updated to always return unknown EAP type. Outer
method does not need to know the exact method implemented by EapHost
inner method.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
213042339b EapHost: Do not reference the Eappprxy.lib when not used
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
4da7785490 method_eap: Refactor
Instead of delayed response packet generation, the
method_eap::process_request_packet() prepares the response packet. This
eliminates the state machine.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
7caa4b12a6 method_eap: tolerate empty request packets
TLS methods call process_request_packet(NULL, 0) to check on the inner
method for the payload to piggyback on the final handshake response.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
2282a2c45f Explicitly check buffer length before touching it and unify exception
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
9d0e261bbe method_eap: Add EAP Success/Failure support
Although, EapHost takes care for EAP Success and Failure packets for us,
it does so for the outer-most method only. When using EAP inside a TLS
tunnel, we are responsible for EAP Success and Failure packets ourselves.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:53 +01:00
e5e5f1c63e method_eap: Support EAP identity exchange
Although, EapHost takes care for EAP identity exchange for us, it does
so for the outer-most method only. When using EAP inside a TLS tunnel,
we are responsible for EAP identity exchange ourselves.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:52 +01:00
1c295360fc Double link inner-outer methods
This allows inner methods to access method_defrag to get negotiated
EAP-TTLS/PEAP protocol version.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
0daa0579fe method_defrag: Merge EAP response/request flags
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
b908ff3aa9 method_defrag: Add support for version negotiation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-07 13:07:00 +01:00
4af1bdc935 method_defrag: Simplify data length calculation
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
a18fb7826c MSCHAPv2: Adopt authentication success from EAP
It is usually the outer EAP-Success/Failure message that confirm the
authentication is gracefully over.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
d8cc9636b5 MSCHAPv2: Set keying material the proper way
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
f4e8ba88ae Omit "B" from reported sizes
There should be a space between the number and a unit. Since everything
is always reported in bytes, there is no need to have a unit.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
9e9648c924 Make modules and methods non-copyable & non-movable
Modules and methods are never duplicated or moved in a memory. Moving
constructors and operators are dead code.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:42 +01:00
a75008891b Add ECDHEPHEM and NULL cipher friendly names
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
72398339d3 Update PEAP name
It's PEAP, not EAP-PEAP.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
6addc49df2 wxInitializerPeer: Move upstream and make reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
c4fc8d184a config_method_with_cred: Move anonymous identity upstream
This might break BLOB backward compatibility.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
a2a4d75745 method: Cleanup get_result()
fIsSuccess is already set to TRUE by module::get_result().

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
b3291ff8b1 Remove excessive UTF-8 BOM marker
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:41 +01:00
5e99c8e1c7 Makefile: Parameterize platform and language component GUIDs
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
14e48f9c8a Parameterize EAP module MSI building
Since this also changes GUIDs of some components, the "EAPTTLS" has been
changed to "EAP-TTLS" in filenames.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
dfa8115883 Simplify EAPMETHOD_PEER(_UI) constants to match other EAPMETHOD... ones
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
b49624fc28 Revise _CRT_SECURE_NO_WARNINGS coverage
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
08a67c561a Make EAP method StdAfx(_UI).h and RC files reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
d3760d33ca Makefile: Parameterize event provider GUID
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
8b66c7ad8d Parameterize EAP method author ID
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:40 +01:00
6f4df3dfab Move reusable parts of .vcxproj to .props
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
f05d3f8243 Make _UI suffix consistent
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
1cc7b1a3a0 Simplify .vcxproj and .props
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
33612b556c Reorganize EAPMethods projects to scale better
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
b592ad0569 Makefile: Make EAP method module registration reusable
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
68729cdcd9 Documentation update
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
32254864d5 Remove std::move on const members
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:39 +01:00
5a7827e85e Make enums scoped
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:53:38 +01:00
6db816cd60 Match enum forward declaration
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:52:44 +01:00
840e055bf6 Relocate data encryption key
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:52:44 +01:00
40193b7a68 Re-add UTF-8 BOM where required
When no UTF-16 or UTF-8 BOM is present, MSVC will read source files
using current user charset.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:52:44 +01:00
98fa1a09a0 MSI: Merge PRODUCT_NAME into MSIBUILD_PRODUCT_NAME_ID
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:52:44 +01:00
8d68795461 Bump MSIBuild
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-06 11:52:43 +01:00
059710d83c Update Copyright year
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-02-05 11:45:51 +01:00
fac33ee0b1 Remove UTF-8 BOM
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-11-28 17:04:16 +01:00
55b8259fe9 Bump WinStd and wxExtend
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-11-28 16:40:19 +01:00
bbd5aa1490 Enable function level linking to allow LTCG
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-09-04 13:11:49 +02:00
6fb5cb88d2 Address code analysis warnings
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-09-04 13:11:48 +02:00
a459823beb Make ui_canceller cover more code
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-22 18:38:03 +02:00
9058dc75d9 Change GEANTLink-dist repo local path
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-22 15:31:08 +02:00
ab3ffc63f7 Cancel previous credential prompt if EapHost wants a new one
(fixes #27)

Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 16:02:32 +02:00
24a02e5adf Simplify UI flow
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 15:34:49 +02:00
b2d939011f Tolerate already registered monitor master and slave window classes
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 15:08:16 +02:00
2ce0c5d259 Optimize std::wstring (un)packing
The string is now converted to and from UTF-8 directly into or from
memory pointed by cursor. Extra buffer allocation and copy has been
dropped.

Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 13:22:57 +02:00
f3cc5b6064 Fix typo
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 08:56:01 +02:00
8a093c645e Make (un)packing of std C++ string explicit
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 08:55:32 +02:00
35fd9fbbac Move eap::monitor_ui to Module.h/cpp
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-14 08:50:02 +02:00
dfd26f214d Upgrade eap::monitor_ui's HWND to volatile
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-13 14:28:21 +02:00
009cd36fe2 Move parent HWND management to wxInitializerPeer
While reducing copy & pasted code, this also protects wxTopLevelWindows
list with a lock.

Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-13 12:47:27 +02:00
592d53d8bc Log failure status reason of last authentication failure
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-12 14:12:25 +02:00
e10923c7c2 Update translation templates
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-12 14:10:42 +02:00
d66ad98a49 Update documentation
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-12 13:18:51 +02:00
2e8bd4403f Fix typo 2019-06-14 11:51:09 +02:00
40ee89a04a Update translations
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 11:09:02 +02:00
0e69fb175c Upgrade to Visual Studio 2019
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 10:54:41 +02:00
8233992b76 Update documentation
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
f88b966762 Bump wxExtend
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
5a82dc2a25 Unify LPCBYTE
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
638f2cf18d Bump WinStd
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
38a7354ad9 Upgrade to compile with WIN32_LEAN_AND_MEAN
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
672afbb918 Preset version to 1.2g
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-14 09:57:48 +02:00
ec908bbfe9 Update README.md 2018-12-06 08:34:09 +01:00
3396f9cf97 Force SHA-256 digest for timestamp signatures
Comodo timestamp server defaults to SHA-1. To make sure timestamp
signatures are SHA-256, add appropriate signtool.exe flag.
2018-11-06 20:08:44 +01:00
f6ce76d384 Update translations and add Estonian translation 2018-11-06 20:08:08 +01:00
ee7a8ce6d1 Silence the missing shcore.dll warning on Windows 7 2018-11-06 20:06:41 +01:00
a53ceba97e Preset version to 1.2f 2018-11-06 20:06:13 +01:00
4d7538937b Update sub-modules
(fixes #25)
2018-09-30 16:54:53 +02:00
10297c7ab3 Make GUI DPI-aware 2018-09-17 11:43:19 +02:00
c7f1a66a4a Update sub-modules 2018-09-14 17:50:45 +02:00
c2426f26fd Clean-up 2018-09-08 01:10:43 +02:00
6069a25c75 Run MSBuild tasks in parallel 2018-09-07 12:54:43 +02:00
f07eed7882 Pre-set version to 1.2e 2018-09-07 12:53:46 +02:00
401b4cdc28 Set version to 1.2d 2018-09-07 12:43:33 +02:00
1879d00bf9 Add support for ARM64 platform 2018-09-07 10:39:20 +02:00
0602285220 Switch to Visual Studio 2017 2018-09-05 14:56:08 +02:00
1fe80bd0e0 Stop using internal unique_ptr::_Myptr member 2018-09-05 14:40:27 +02:00
b3e5c93f4b Add explicit constructors/operators to sanitizing_blob_(z)f
Otherwise the compiler might generate default ones - and delete them
too.
2018-09-05 14:32:03 +02:00
366e08899b Review implicit narrowing conversions 2018-09-05 14:29:49 +02:00
d5142aaf15 Distinguish or merge variables with same names
...to resolve C4457 warnings.
2018-09-05 14:27:59 +02:00
0b3e340dbe Update sub-modules 2018-09-05 13:22:59 +02:00
b655bd7d0b Register en_US language in nmake register
When "Language" setting is absent in registry, the initialization of
wxWidget localization raises asserts.
2018-09-05 13:16:59 +02:00
daeca67bee Force disable incremental linking
Incremental linking and reference optimization are mutually exclusive.
While VC2010 defaulted to non-incremental linking, this conflict was not
apparent.
2018-09-05 13:15:48 +02:00
d2b66563e1 Fix incorrect template parameter tolerated by VC2010 2018-09-05 13:13:14 +02:00
0d21610322 Remove MFC dependency 2018-09-05 13:11:14 +02:00
f75e72757e VS10Solution.sln => GEANTLink.sln 2018-09-05 13:06:21 +02:00
2e81aee089 Update MSIBuild sub-module 2018-09-05 13:03:54 +02:00
7a6b760845 Upgrade to wxWidgets 3.1.1 and wxFormBuilder 3.8.1 2018-09-03 13:59:18 +02:00
5fd1c3b60e Switch to SHA-256 signing of final MSI files
This breaks support for Windows Vista.
2018-07-04 11:27:13 +02:00
e2c9914ef9 Import translations from Transifex 2018-07-04 10:02:49 +02:00
34a8f1b155 Update translation template 2018-06-20 15:32:34 +02:00
47f0a41fb6 Update sub-modules 2018-06-20 15:00:53 +02:00
352ad4f9d2 Stop using <> parentheses to avoid XML/HTML markup
Transifex treats strings enclosed in <> as HTML.
2018-06-20 14:59:52 +02:00
fc40c44612 .gitignore output WLANManager.exe properly 2018-06-20 14:58:48 +02:00
9846d29d76 Switch to SHA-256 signing 2018-06-20 14:58:27 +02:00
502f26059d Preset version to 1.2c 2018-06-20 14:58:17 +02:00
d0e363b7c0 Enable Italian GUI 2018-06-20 14:57:07 +02:00
6259a80cf4 Update translations 2018-06-20 14:57:01 +02:00
83f975861c Auto-detect devenv.com path 2018-06-20 14:56:36 +02:00
7593a34ff4 Set version to 1.2b 2017-12-05 10:04:27 +01:00
8aae24d63d Translation update 2017-12-05 10:03:42 +01:00
dd29b58da6 Update wxExtend module 2017-12-05 10:03:33 +01:00
864b8177e5 Update WinStd module 2017-12-05 10:03:19 +01:00
8de444dadf Distribution folder changed 2017-11-20 12:04:11 +01:00
1db7e953e8 Issue with NULL-initialized new profile configuration fixed 2017-07-10 10:48:10 +02:00
8605dcc751 Sub-module update 2017-05-30 12:35:06 +02:00
9210f2a711 Translation update 2017-05-30 12:34:49 +02:00
5d5e14b724 Version set to 1.2a 2017-05-22 09:31:00 +02:00
1d583c39c9 daea1bba62ba514ed13d716ca5b5b1c89763c8f9 reverted 2017-05-22 09:14:09 +02:00
9926cd19ee WMI\Autologger records not installed any more, since they caused feature completeness check trouble: MsiUseFeature() reports feature broken, when it is denied access to any component folder or registry key 2017-05-22 09:13:40 +02:00
daea1bba62 MsiUseFeature() returning INSTALLSTATE_BROKEN is tolerated in non-elevated process now 2017-05-22 08:38:39 +02:00
f05f8dab76 Version set to 1.2 2017-05-17 13:10:54 +02:00
ba11abff1d WLANManager.exe now deployed as WLANManager-Win32.exe and WLANManager-x64.exe 2017-05-17 13:09:26 +02:00
22f578b451 Documentation update 2017-05-17 12:53:10 +02:00
7bc76ac54c Supported OS list update 2017-05-17 12:28:14 +02:00
5e35c5769a Documentation update 2017-05-17 12:25:39 +02:00
3f888dd781 Secondary error message pop-up removed 2017-05-17 10:26:41 +02:00
5b065bce3d Update README.md 2017-05-16 13:34:06 +02:00
d8a1fe95aa Sub-module update 2017-05-16 13:31:39 +02:00
f57ee6c0f8 Documentation update 2017-05-16 13:31:24 +02:00
3364719ba1 WLANManager support for multiple wireless interfaces 2017-05-16 13:11:10 +02:00
e46739a510 Indentation fix 2017-03-14 09:36:48 +01:00
adc860fa6e Version set to 1.2-beta2 2017-02-24 11:09:27 +01:00
d4cc3053a6 Clean-up 2017-02-23 12:09:00 +01:00
38c6189d5f AuthMode setting correctly logged now 2017-02-23 11:18:23 +01:00
bf4c4d846e Incorrect CoCreateInstance() result evaluation fixed 2017-02-23 11:05:13 +01:00
5040ebba8e Pop-up window single flash replaced with periodic flashing 2017-02-22 11:48:39 +01:00
4598528765 Debugging-related exception in WlanUIEditProfile() resolved 2017-02-22 11:11:57 +01:00
8fbcf27f6a Locale is dynamic now, since wxLocale does not support re-initialization (when module is reused) 2017-02-22 09:42:18 +01:00
48d46617d2 Pop-ups are no longer children of the GetForegroundWindow() when no parent window is specified. Instead, they are displayed as a standalone app. 2017-02-21 15:13:20 +01:00
e7d5ecb50b Documentation update 2017-02-21 12:01:54 +01:00
6a77f3f7b3 New version of wxExtend 2017-02-20 10:57:53 +01:00
a4673f9fb9 Compilation of debug MSI files fixed 2017-02-20 10:05:03 +01:00
c84a8b5a70 Documentation update 2017-02-13 08:00:07 +01:00
31a3b67cba 64-bit language detection removed from 32-bit MSI resolving ICE80 warning 2017-02-09 13:40:43 +01:00
b44cb66b2a Version set to 1.2-beta1 2017-02-09 13:20:33 +01:00
690a6d54d2 EAP-GTC authentication now split into two modes: Challenge/Response and Password 2017-02-09 13:18:46 +01:00
e7e57abf52 Uninitialized enum higher bytes when reading as unsigned char fixed 2017-02-09 11:38:57 +01:00
bda31a487f Revert "EAP-GTC method renamed to "EAP-GTC (Token Generator)""
This reverts commit 2908bc31a3ce309b866ab1b2eeae2b706a7feb29.
2017-02-09 09:33:39 +01:00
2908bc31a3 EAP-GTC method renamed to "EAP-GTC (Token Generator)" 2017-02-09 08:06:32 +01:00
66dd2bf283 eap::config split to eap::config and eap::packable 2017-02-07 09:33:29 +01:00
527d4271b1 Version set to 1.2-beta 2017-02-06 08:18:09 +01:00
36f6d04906 Translation update 2017-02-06 08:08:07 +01:00
e8758e9c41 Translation update 2017-02-02 18:17:07 +01:00
058ec398e6 __DANGEROUS__LOG_CONFIDENTIAL_DATA is now 0/1 #defined 2017-02-02 13:57:44 +01:00
5b79f5d849 EAP_INNER_EAPHOST is now 0/1 #defined 2017-02-02 13:57:16 +01:00
6f049d2692 EAP_USE_NATIVE_CREDENTIAL_CACHE is now 0/1 #defined 2017-02-02 13:25:24 +01:00
964bf4032a Doxygen settings updated 2017-02-02 12:39:51 +01:00
87e2296dde Documentation update 2017-02-02 12:17:52 +01:00
6284b6c29e EapHost support in invoke_interactive_ui() added 2017-02-02 11:36:12 +01:00
260b78025c EapHost credential prompt result evaluation fixed 2017-02-02 11:35:41 +01:00
6b81ea51d3 EapHost conditional compilation directive fixed 2017-02-02 11:26:15 +01:00
a07eb48174 EAP-GTC credential prompt fixed 2017-02-02 10:41:50 +01:00
0ec0e3579e EAP-GTC event logging and clean-up 2017-02-02 10:22:43 +01:00
a78901cb63 EAP-GTC challenge/response prompt now functional 2017-02-01 14:36:53 +01:00
27ae8baf3a eap::ui_context_ttls introduced 2017-02-01 14:35:33 +01:00
dd3da2f41a EAP-GTC response panel and dialog finished 2017-02-01 14:33:12 +01:00
6f3aa650b6 Clean-up 2017-02-01 14:32:00 +01:00
191e4abd9c eap::ui_context class for inter-process exchange introduced 2017-02-01 14:23:08 +01:00
386d852859 Clean-up 2017-02-01 13:11:27 +01:00
7977d04281 EapHost peer initialization conditional now 2017-02-01 11:02:41 +01:00
b632f0202f get_ui_context() upgraded 2017-02-01 10:52:57 +01:00
57372b8f95 Simple BLOB encryption/decryption added & comment updates 2017-02-01 10:23:07 +01:00
172cd18c16 Missing namespace added 2017-02-01 09:54:17 +01:00
cfc241d3a6 Initial version of GTC Challenge/Response panel added 2017-01-31 14:58:08 +01:00
4c1d4b0580 Identity and password credential panel icons distinguished 2017-01-31 14:42:36 +01:00
d508a6c398 EAP-GTC implementation continues... 2017-01-31 13:54:55 +01:00
f9083dc300 eap::credentials reverted back to abstract class (25934dd8c70ca399ff4c58fd9a06319de81611f3 undone), and eap::credentials_identity introduced, since identity-only credentials must fail when <UserName> absent 2017-01-31 13:54:27 +01:00
0b358acba7 Clean-up 2017-01-31 13:41:08 +01:00
cbe831f9f6 EAP errors now correctly displayed in Event Viewer 2017-01-31 12:36:24 +01:00
d7795ef054 Translation update 2017-01-31 11:12:05 +01:00
9b41c73e9d Incorrect RFC quote removed 2017-01-31 11:03:06 +01:00
e8d231d360 EAP-GTC implementation continues... 2017-01-31 10:40:11 +01:00
f6522b8fa7 wxPasswordCredentialsPanel<> split to wxIdentityCredentialsPanel<> and wxPasswordCredentialsPanel<> to provide support for identity-only credentials (i.e. EAP-GTC). 2017-01-31 10:36:53 +01:00
25934dd8c7 eap::credentials no longer pure virtual to allow identity-only credentials (i.e. EAP-GTC). 2017-01-31 10:33:15 +01:00
4b4578fd59 Both event channels are registered using Makefile disabled now, to prevent Events.dll getting constantly locked by Event Log service. 2017-01-31 10:30:29 +01:00
4ec366b23b "User ID" and "Password" labels vertically centered 2017-01-31 10:04:56 +01:00
4b40c4d217 EAP-GTC work continues... 2017-01-30 14:49:27 +01:00
a2a87ddc4c Additional clarification of UI context handling 2017-01-30 14:49:09 +01:00
bd73ea7914 EAP-GTC implementation started 2017-01-30 13:42:51 +01:00
5fada1b6a9 Comment fixed 2017-01-30 12:41:53 +01:00
5f28fc873c EAP types look-up extended 2017-01-30 12:14:19 +01:00
2cb9453209 Version set to 1.2-alpha 2017-01-30 09:09:11 +01:00
78325c98c7 Documentation update 2016-12-13 11:28:29 +01:00
aa3f44260e Event reporting extended to support event channel in Windows Event Viewer 2016-12-09 13:29:07 +01:00
8f054a1f97 Event source in registry changed to match the one in manifest 2016-12-08 08:47:59 +01:00
f4a6e542f0 Translations updated 2016-12-07 13:56:05 +01:00
fb9e6c4e5a Missing credential identity tooltip reintroduced 2016-12-07 13:27:30 +01:00
e317439910 Some extra diagnostic output added when configuration XML contains unknown/unsupported method
# Conflicts:
#	lib/TTLS/src/Config.cpp
2016-12-07 13:23:01 +01:00
f7dcdc2dce Identity read-only text box in credential selection configuration panel has been replaced by static text not to confuse users they can edit it there 2016-12-07 13:18:31 +01:00
fb376b29df Version set to 1.1-beta2 2016-12-05 13:26:17 +01:00
d82e22d188 Post-festum CRL checking introduced 2016-12-05 13:00:39 +01:00
303350dec0 eap::peer_ttls::end_session() fixed to call method's end_session() method 2016-12-05 12:42:35 +01:00
dd144efa5f New authentication status introduced: server compromised 2016-12-05 12:39:04 +01:00
cb253450a0 Distribution folder changed 2016-11-29 13:01:26 +01:00
168aed3000 Charset issue in version resource fixed 2016-11-18 09:12:35 +01:00
2f5742eb9b Version set to 1.1-beta1 2016-11-18 06:50:34 +01:00
79ff14ddd3 Translation update 2016-11-18 06:24:32 +01:00
b4988187c0 Digital signing of CAB files introduced 2016-11-11 12:44:01 +01:00
97f497bc04 ...3.msi and ...3.mst files renamed to remove ".3" versioning in the name, to simplify their deployment 2016-11-11 12:41:26 +01:00
368de2e865 ...3.msi files are finalized now (marked as final, digitally signed, read-only), as they can be used for GPO deployment 2016-11-11 11:50:16 +01:00
2c842bd2bb Makefile sub-target CleanSetup introduced 2016-11-11 11:42:37 +01:00
e10d14681f en_US MSI files prepared using MSILocal.mak now for more uniform building 2016-11-11 11:38:24 +01:00
444ae3d68d POT files updated to contain 1.1 and 1.0 texts 2016-11-08 11:56:38 +01:00
f72de7b8af Distribution folder changed 2016-11-08 11:36:38 +01:00
22a62ea6e4 Sub-module update 2016-11-08 11:36:16 +01:00
4d4bbe66e7 Version set to 1.1-beta 2016-11-07 14:34:19 +01:00
e8d2e33aac WideCharToMultiByte() and MultiByteToWideChar() optimization 2016-11-07 13:44:40 +01:00
9efb75d66f Documentation update 2016-11-07 12:59:50 +01:00
c053fd75e3 POT update 2016-11-07 12:40:51 +01:00
4ae048fd9f Auditing of CryptProtectData() enabled 2016-11-07 11:06:20 +01:00
3b6d2b2c14 Password and certificate output to log is no longer conditioned by _DEBUG 2016-11-07 10:48:13 +01:00
3a653be368 POT update 2016-11-04 14:13:15 +01:00
10aa7ad3f1 MSI localized files contain and install own resources only now 2016-11-04 14:03:33 +01:00
6ccf96c338 Non-ready localizations deactivated 2016-11-04 14:00:30 +01:00
9ef95a8d64 EventMonitor Doxygen documentation update 2016-11-04 12:53:44 +01:00
6166dd3887 Reported events are more consistent now 2016-11-04 11:51:39 +01:00
d08b70c284 Last result status handling improved 2016-11-04 11:50:58 +01:00
7750ebdb66 MSCHAPv2 server challenge issue fixed 2016-11-04 11:49:01 +01:00
c908e8ecfb EAPMsg branch is mainstream now 2016-11-04 10:06:28 +01:00
1fc2b7ff66 Redundant std::string to const char* conversion in exception constructors cleaned 2016-11-04 09:26:27 +01:00
eea136619c method_pap >> method_pap_diameter 2016-11-04 09:18:16 +01:00
88651e4ffe EAP-MSCHAPv2 support finished 2016-11-04 09:16:43 +01:00
fa3e7c0e6d Issue with passing wrong EAP type packet to tunneled method introduced in 70ce94b84ea2c58f3e6b857f9aac58218264433d fixed 2016-11-03 11:22:05 +01:00
a8e1ac7455 Separate configuration for EAP-MSCHAPv2 introduced 2016-11-03 11:13:12 +01:00
48ba0b3664 Typo in documentation fixed 2016-11-03 11:11:54 +01:00
e7e484c814 Support for EapHost based inner methods has been (temporarily) disabled 2016-11-03 10:23:30 +01:00
b87e30bc9d Some final adjustments to EapHost inner method code before I put it to rest because of RasMan MSCHAPv2 heap corruption :( 2016-11-03 10:11:31 +01:00
60aa513375 Aesthetic modifications 2016-11-03 09:33:25 +01:00
a450d02485 Maximum inner method packet length now precisely calculated in begin_session() methods too 2016-11-03 07:55:33 +01:00
70ce94b84e Support for Legacy Nak introduced 2016-11-02 11:36:43 +01:00
fba3619747 eap::method_eapmsg initial testing and issue resolving 2016-11-02 11:04:48 +01:00
d234e55ae4 - Doxygen documentation updated
- Some minor issues stumbled upon fixed
- WIN1250 >> UTF-8
2016-11-02 01:25:38 +01:00
0387d7d593 Orphaned PAP.cpp files removed 2016-11-01 06:37:37 +01:00
b1a0669c40 EventMonitor's wxFormBuilder resources moved to res sub-folder 2016-11-01 05:56:10 +01:00
52a428bb5e Various ownTLS leftover clean-up 2016-11-01 05:33:55 +01:00
655cbe70d1 EapHostPeerInvokeIdentityUI() call fixed 2016-10-31 17:17:21 +01:00
c31e019cef eap::metod thorough redesign:
- Support for method stacking introduced
- EAP-TLS method has been discontinued
- ownTLS has been discontinued
2016-10-31 16:58:53 +01:00
b054dcdc7a eap::diameter_avp_append() set of functions introduced 2016-10-31 16:28:38 +01:00
0d8f243d31 eap::module::make_error() extended to support EAP_ERROR duplication 2016-10-31 16:23:42 +01:00
96d5b95b6f Doxygen documentation update 2016-10-31 16:22:45 +01:00
af56825d39 Code clean-up 2016-10-28 13:50:30 +02:00
f5a40f7ca8 Doxygen update 2016-10-28 13:47:59 +02:00
6f30239ada method_eaphost is no longer method_noneap child but correctly a method child 2016-10-27 14:13:02 +02:00
55f160bce3 Code clean-up 2016-10-27 13:59:08 +02:00
654c965851 Support for various peer action request extended 2016-10-27 10:00:18 +02:00
fc008bcfb4 Unable to set blank certificate credentials issue fixed 2016-10-25 14:13:12 +02:00
ddd83a74e5 eap::credentials_eaphost now complete 2016-10-25 13:39:54 +02:00
d87b3d37e5 Discrete output of credentials to event log centralized 2016-10-25 13:37:39 +02:00
04af17121c Redundant eap::credentials_eaphost::get_identity() removed 2016-10-25 13:34:21 +02:00
aa18aed868 Zero-length event property data retrieval fixed 2016-10-25 13:33:13 +02:00
7d1668e2e0 Configuration value logging replaced with array variant instead of varadic event_provider::write() method for performance reasons 2016-10-25 13:04:12 +02:00
1d302954e3 event_data::blank redefined to prevent confusion with NULL values causing premature varadic argument termination leading to incomplete event data 2016-10-25 13:01:56 +02:00
dd55dfd24d eap::config_method_eaphost::get_method_str() finished 2016-10-25 11:06:11 +02:00
65ea47eb4e EAPMsg >> EapHost 2016-10-25 08:51:13 +02:00
abf54ad342 Doxygen documentation update 2016-10-25 08:51:04 +02:00
2041accecb EAP-Message integration continues... 2016-10-24 15:08:25 +02:00
e7e1a6735d pEapOutput Prefast specifier for process_request_packet() methods changed 2016-10-24 14:55:31 +02:00
2c91b6ca8c pEapOutput Prefast specifier for set_response_attributes() methods changed 2016-10-24 14:42:56 +02:00
45ce38916b eap_error_runtime introduced 2016-10-24 14:13:27 +02:00
131e19df88 new wxExtend library version 2016-10-24 14:12:24 +02:00
0d73e2f7a2 Incorrect pEapOutput in method::set_ui_context() methods fixed 2016-10-24 14:11:15 +02:00
a1f9a7bab9 ppResult >> pResult 2016-10-24 13:33:01 +02:00
6f90cfaf99 Sub-module update 2016-10-18 14:29:16 +02:00
2cf134db1e Incorrect string template fixed 2016-10-17 16:39:23 +02:00
7557bf784a Excessive c_str() removed 2016-10-17 16:37:27 +02:00
68c2c05b41 wxEAPGetProviderName() output fixed 2016-10-17 16:15:26 +02:00
de2506bcc4 Unified credential TTLS prompt replaced with separate prompts for identity provider, outer credentials and inner credentials
EapHost peers provide credential dialogs only and cannot be integrated into unified credential prompt as a panel, requiring additional clicking and pop-ups for user to enter credentials.
2016-10-17 16:05:36 +02:00
ee94756655 Missing type-cast preventing correct CA certificate file import fixed
(broken in 559ffc5ead99b6848386588319bf49005da9b5d4)
2016-10-17 14:04:21 +02:00
af2d0fde1f Missing credentials BLOB sanitizing added 2016-10-17 13:18:54 +02:00
31f4ec4b93 Bulgarian translation included in final MSI 2016-10-17 10:32:07 +02:00
ec238001cd Merge branch 'master' of https://github.com/Amebis/GEANTLink 2016-10-17 10:31:57 +02:00
f42c7f8bb5 Localization update 2016-10-17 10:31:13 +02:00
bafbdec9d3 User interaction and EAP response attributes management delegated to eap::method 2016-10-14 10:34:14 +02:00
3f75ef83bb Non-saving inner method configuration issue fixed 2016-10-14 10:29:14 +02:00
6d4802a06f Sub-module update 2016-10-14 10:11:36 +02:00
2e38f79a6e Localization and compilation separated, as satisfied Localization target skipped building 2016-10-11 11:32:22 +02:00
6b7a1966e3 Norwegian Bokmål translations added to MSI 2016-10-10 17:40:58 +02:00
3606a8d25d Catalan translations added to MSI 2016-10-10 17:40:57 +02:00
6be4fddcd7 Translation updated 2016-10-10 17:40:57 +02:00
7a26128c7b "auto" simplified 2016-10-10 15:00:10 +02:00
f9697dfcee Loading EAPMsg credentials from Windows Credential Manager temporarily commented 2016-10-10 14:54:22 +02:00
e40ee1c34b Missing EapHost peer initialization added 2016-10-10 14:31:32 +02:00
e94e3bdd60 credentials::combine() methods updated with support for EAPMsg:
- Additional parameters
- Additional result code
- User impersonation now mounted inside of credentials::combine() when required
2016-10-10 14:31:23 +02:00
c660e2b3e6 config_method_with_cred::make_credentials() method moved to parent class config_method for seamless EAPMsg method support 2016-10-10 13:20:08 +02:00
864105186b Serbian translation added to MSI
(Except from MSI setup, UI is completely translated to Serbian now)
2016-10-10 10:19:31 +02:00
028742d7e6 Translations update 2016-10-10 10:19:31 +02:00
5d891c9581 Sub-module update 2016-10-07 15:38:32 +02:00
e4758faba3 Host name and FQDN validators moved to wxExtend; Incorrect FeatureComponent mappings of EventMonitor localization components fixed 2016-10-07 15:28:47 +02:00
9aacbb2fef Sub-module update 2016-10-07 12:38:04 +02:00
5c966f35a8 wxInitializeLocale moved to wxExtend 2016-10-05 12:11:17 +02:00
a2830d2aee EAPMsg profile configuration XML load/save support added 2016-10-04 12:35:32 +02:00
ce05418d8e Both XML selection namespaces (eap-metadata and eaphostconfig) are configured now 2016-10-04 12:33:43 +02:00
583fc19da7 config_method_ttls::make_config_method() method modified to support EAPMsg 2016-10-04 12:12:46 +02:00
597095b536 Support for packing and unpacking of config_method_eapmsg added 2016-10-04 11:23:12 +02:00
5dad353d98 winstd::eap_runtime_error exception introduced 2016-10-04 11:21:40 +02:00
dab9e69dd3 Inner EAP method support progress continues... 2016-10-04 10:32:11 +02:00
2bc6d97ab0 m_cred >> m_cred_blob 2016-10-04 10:30:37 +02:00
2f49934a92 Some more C casting replaced with C++ dynamic casting 2016-10-04 10:20:01 +02:00
e8eec11618 EAP-TTLS inner method no longer needs to have support for configured credentials 2016-10-04 10:13:45 +02:00
03d6823241 Some more C casting replaced with C++ dynamic casting 2016-10-04 09:16:14 +02:00
5a36eb0d23 Documentation update 2016-10-04 09:04:09 +02:00
7d13222838 Inner EAP method support progress continues... 2016-10-03 15:48:54 +02:00
c53ed21d55 Code clean-up 2016-10-03 14:54:02 +02:00
10c03ccedb 1.5.2 False positives from security audit resolved 2016-10-03 14:54:02 +02:00
01245d15d9 ID 8. A typo in the comment from security audit resolved 2016-10-03 14:54:02 +02:00
ff4e8c6885 ID 7. Commented out parts of the code from security audit partially resolved 2016-10-03 14:54:02 +02:00
111ede456e ID 5. Unused variables from security audit partially fixed 2016-10-03 14:54:01 +02:00
f0af016efe ID 4. Possibility of method_tls class initialization list optimization from security audit fixed 2016-10-03 14:54:01 +02:00
559ffc5ead ID 3. C style pointer casting from security audit fixed 2016-10-03 14:53:50 +02:00
28408fcea7 ID 2. Missing functionality from security audit report partially fixed 2016-10-03 14:52:57 +02:00
7924612419 ID 1. Variables shadowing from security audit report fixed 2016-10-03 14:52:44 +02:00
c1a483a0bd Version set to 1.0-beta7 2016-10-03 14:52:12 +02:00
b34aee8493 Translation update 2016-10-03 14:52:01 +02:00
a1455078e9 Explicit server certificate check introduced 2016-10-03 14:51:45 +02:00
a834fbcb7c Inner EAP method support progress continues... 2016-09-30 15:22:12 +02:00
13d84c3c4d Various events are propagated to parent classes now 2016-09-30 11:00:23 +02:00
1d4a77b96b Remove CA button enable/disable logic fixed after CA list box switched to single selection in c371187edcc407ae7a1927ceefc1fa3c3220adf5 commit 2016-09-30 11:00:14 +02:00
7a379a1a87 OnInitDialog events are propagated to parent classes now 2016-09-30 11:00:02 +02:00
7d986b82d8 OnUpdateUI events are propagated to parent classes now 2016-09-30 09:58:00 +02:00
2bc43869b0 Revert "Switching inner authentication method re-layouts configuration dialog now"
This reverts commit 67003bd478e1af2c16e922fcbf7bc974affd658e.
2016-09-29 15:33:37 +02:00
caf80e07f9 Switching inner authentication method re-layouts configuration dialog now 2016-09-29 14:48:12 +02:00
0d1bcbf9c4 Localization and compilation separated, as satisfied Localization target skipped building 2016-09-29 14:47:58 +02:00
9ea80712d9 EAPMsg integration 2016-09-29 14:39:39 +02:00
613117775d Initial versions of EAPMsg libraries 2016-09-29 14:07:52 +02:00
440 changed files with 41176 additions and 26675 deletions

5
.gitignore vendored
View File

@ -1,5 +1,2 @@
/*.opensdf
/*.suo
/*.sdf
/.vs
/doc
/ipch

3
.gitmodules vendored
View File

@ -7,3 +7,6 @@
[submodule "lib/wxExtend"]
path = lib/wxExtend
url = https://github.com/Amebis/wxExtend.git
[submodule "lib/stdex"]
path = lib/stdex
url = https://github.com/Amebis/stdex.git

View File

@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\lib\WinStd\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

Binary file not shown.

View File

@ -1,6 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
@ -9,6 +13,10 @@
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
@ -20,78 +28,46 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{2D3CE079-7EB1-4F47-B79E-F0310671ECCB}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>CredWrite</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<PropertyGroup Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PropertyGroup Label="Configuration" Condition="'$(Platform)'=='ARM64'">
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\Win32.props" />
<Import Project="..\include\Debug.props" />
<Import Project="CredWrite.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\x64.props" />
<Import Project="..\include\Debug.props" />
<Import Project="CredWrite.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\Win32.props" />
<Import Project="..\include\Release.props" />
<Import Project="CredWrite.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\x64.props" />
<Import Project="..\include\Release.props" />
<Import Project="CredWrite.props" />
<Import Project="..\include\$(Platform).props" />
<Import Project="..\include\$(Configuration).props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<PropertyGroup>
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\lib\WinStd\include;..\lib\stdex\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="StdAfx.h" />
<ClInclude Include="PCH.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="Main.cpp" />
<ClCompile Include="StdAfx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
<ClCompile Include="PCH.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
@ -110,14 +86,10 @@
<ProjectReference Include="..\lib\TLS\build\TLS.vcxproj">
<Project>{4d40cb8a-812e-4f12-b23a-31af743878e8}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\WinStd\build\WinStd.vcxproj">
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="README.md" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<ImportGroup Label="ExtensionTargets" />
</Project>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
@ -15,12 +15,12 @@
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="StdAfx.h">
<ClInclude Include="PCH.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="StdAfx.cpp">
<ClCompile Include="PCH.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Main.cpp">

View File

@ -1,29 +1,18 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "StdAfx.h"
#include "PCH.h"
using namespace std;
using namespace stdex;
using namespace winstd;
eap::module g_module;
class module_dummy : public eap::module {
virtual eap::config_method* make_config() { return nullptr; }
} g_module;
static int CredWrite()
@ -116,15 +105,16 @@ static int CredWrite()
}
int CALLBACK WinMain(_In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nCmdShow)
_Use_decl_annotations_
int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
UNREFERENCED_PARAMETER(nCmdShow);
_CrtSetDbgFlag(_crtDbgFlag | _CRTDBG_ALLOC_MEM_DF | _CRTDBG_CHECK_ALWAYS_DF | _CRTDBG_CHECK_CRT_DF | _CRTDBG_LEAK_CHECK_DF);
g_module.m_instance = hInstance;
int res = CredWrite();
assert(!_CrtDumpMemoryLeaks());
return res;
}

7
CredWrite/PCH.cpp Normal file
View File

@ -0,0 +1,7 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH.h"

22
CredWrite/PCH.h Normal file
View File

@ -0,0 +1,22 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#pragma once
#include "../lib/EAPBase/include/Config.h"
#include "../lib/EAPBase/include/Credentials.h"
#include "../lib/EAPBase/include/Module.h"
#include <WinStd/Common.h>
#include <WinStd/Win.h>
#include <stdex/base64.hpp>
#include <Windows.h>
#include <eaptypes.h> // Must include after <Windows.h>
#include <shellapi.h>
#include <tchar.h>
#include <memory>

View File

@ -1,7 +1,9 @@
#CredWrite
Imports given credentials to Windows Credential Manager for GÉANTLink use
# CredWrite
Imports given credentials to Windows Credential Manager for GÉANTLink use
## Usage
##Usage
```
CredWrite <username> <password> [<realm> [level]]
```
@ -13,8 +15,15 @@ CredWrite <username> <password> [<realm> [level]]
The credentials are stored to Windows Credential Manager in invoking user's roaming profile.
Return codes:
### Return codes
- -1 = Invalid parameters
- 0 = Success
- 1 = Error parsing command line
- 2 = Error encrypting password or writing credentials
### Example
```
CredWrite dXNlckBjb250b3NvLmNvbQ== cGFzc3dvcmQxMjM= urn:RFC4282:realm:contoso.com 1
```

View File

@ -1,21 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include "StdAfx.h"

View File

@ -1,34 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "../lib/EAPBase/include/Credentials.h"
#include "../lib/EAPBase/include/Module.h"
#include <WinStd/Common.h>
#include <WinStd/Base64.h>
#include <WinStd/Win.h>
#include <Windows.h>
#include <eaptypes.h> // Must include after <Windows.h>
#include <tchar.h>
#include <memory>

View File

@ -1,4 +1,4 @@
# Doxyfile 1.8.7
# Doxyfile 1.8.7
# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project.
@ -44,14 +44,14 @@ PROJECT_NUMBER =
# for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF = "EAP Supplicant for Windows"
PROJECT_BRIEF = "Suite of EAP supplicants for Microsoft Windows - IEEE 802.1X clients for enterprise network authentication"
# With the PROJECT_LOGO tag one can specify an logo or icon that is included in
# the documentation. The maximum height of the logo should not exceed 55 pixels
# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo
# to the output directory.
PROJECT_LOGO =
PROJECT_LOGO = include\icon_ui.ico
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
# into which the generated documentation will be written. If a relative path is
@ -694,7 +694,7 @@ CITE_BIB_FILES =
# messages are off.
# The default value is: NO.
QUIET = NO
QUIET = YES
# The WARNINGS tag can be used to turn on/off the warning messages that are
# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES
@ -718,7 +718,7 @@ WARN_IF_UNDOCUMENTED = YES
# markup commands wrongly.
# The default value is: YES.
WARN_IF_DOC_ERROR = NO
WARN_IF_DOC_ERROR = YES
# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
# are documented, but have no documentation for their parameters or return
@ -790,11 +790,17 @@ RECURSIVE = YES
# run.
EXCLUDE = \
CredWrite\README.md \
EventMonitor\res \
lib\EAPBase_UI\res \
lib\EapHost_UI\res \
lib\GTC_UI\res \
lib\TLS_UI\res \
lib\TTLS_UI\res \
lib\WinStd
lib\WinStd \
lib\wxExtend \
MsiUseFeature\README.md \
WLANManager\README.md
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded

24
EAPMethods/Common.props Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="..\include\$(Platform).props" />
<Import Project="..\include\$(Configuration).props" />
</ImportGroup>
<PropertyGroup>
<_PropertySheetDisplayName>EAP Method Common</_PropertySheetDisplayName>
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir);..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\lib\WinStd\include;..\lib\stdex\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="..\lib\EAPBase\build\EAPBase.vcxproj">
<Project>{ad6816a0-9600-4e01-8c49-39d03d1e791f}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\Events\build\Events.vcxproj">
<Project>{d63f24bd-92a0-4d6b-8b69-ed947e4d2b1b}</Project>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{331B6077-E3E2-4867-B93E-9D3F57280DE7}</ProjectGuid>
<RootNamespace>EAP-TTLS</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
<UseDebugLibraries>true</UseDebugLibraries>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Platform)'=='ARM64'">
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="EAPMethod.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="..\lib\EapHost\build\EapHost.vcxproj">
<Project>{b385ec2b-c3f4-48bb-9bac-8b996de7f754}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\GTC\build\GTC.vcxproj">
<Project>{114a70bb-8698-4a0c-8c90-58f22edd8129}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\MSCHAPv2\build\MSCHAPv2.vcxproj">
<Project>{86a6d6a0-4b7d-4134-be81-a5755c77584d}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\PAP\build\PAP.vcxproj">
<Project>{36b0cf8a-7794-46c3-8099-825ba962b4c7}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TLS\build\TLS.vcxproj">
<Project>{4d40cb8a-812e-4f12-b23a-31af743878e8}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TTLS\build\TTLS.vcxproj">
<Project>{ee0ef0d9-a475-4038-8637-5754724f65b0}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets" />
</Project>

View File

@ -1,40 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="StdAfx.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="StdAfx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\Main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="EAPTTLS.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<None Include="..\build\EAPMethod.def">
<Filter>Source Files</Filter>
</None>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="PCH.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="PCH.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Register.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\EAPMethod.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<None Include="EAPMethod.def">
<Filter>Source Files</Filter>
</None>
</ItemGroup>
</Project>

View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{DD7A97CA-F18E-43B7-95C4-D06E6A291624}</ProjectGuid>
<RootNamespace>EAP-TTLS_UI</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
<UseDebugLibraries>true</UseDebugLibraries>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Platform)'=='ARM64'">
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="EAPMethod_UI.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="..\lib\EapHost\build\EapHost.vcxproj">
<Project>{b385ec2b-c3f4-48bb-9bac-8b996de7f754}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\EapHost_UI\build\EapHost_UI.vcxproj">
<Project>{13d2d8b5-f6aa-459d-b5f7-29b95dd9d583}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\GTC\build\GTC.vcxproj">
<Project>{114a70bb-8698-4a0c-8c90-58f22edd8129}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\GTC_UI\build\GTC_UI.vcxproj">
<Project>{34680813-3a52-46fb-b5a8-1e4bbf770855}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\MSCHAPv2\build\MSCHAPv2.vcxproj">
<Project>{86a6d6a0-4b7d-4134-be81-a5755c77584d}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\MSCHAPv2_UI\build\MSCHAPv2_UI.vcxproj">
<Project>{7af5b922-7c17-428a-97e0-09e3b41a684d}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\PAP\build\PAP.vcxproj">
<Project>{36b0cf8a-7794-46c3-8099-825ba962b4c7}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\PAP_UI\build\PAP_UI.vcxproj">
<Project>{3d309c2e-64ab-4bc4-a16d-468571a2bc1a}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TLS\build\TLS.vcxproj">
<Project>{4d40cb8a-812e-4f12-b23a-31af743878e8}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TLS_UI\build\TLS_UI.vcxproj">
<Project>{9a25c261-8ade-4938-8393-e857ef0e37e9}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TTLS\build\TTLS.vcxproj">
<Project>{ee0ef0d9-a475-4038-8637-5754724f65b0}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\TTLS_UI\build\TTLS_UI.vcxproj">
<Project>{42f0f0f4-c928-4860-a4e4-94991c2c3d90}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\include\xgettext.targets" />
</ImportGroup>
</Project>

View File

@ -1,136 +1,145 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="Resource Files\Localization">
<UniqueIdentifier>{e43059ae-37ac-4b28-84fb-18d1b3972b30}</UniqueIdentifier>
<Extensions>po;pot</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="StdAfx.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="StdAfx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\Main_UI.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="EAPTTLSUI.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<None Include="..\build\EAPMethodUI.def">
<Filter>Source Files</Filter>
</None>
<None Include="..\locale\EAPMethods.pot">
<Filter>Resource Files\Localization</Filter>
</None>
</ItemGroup>
<ItemGroup>
<POCompile Include="..\locale\sl_SI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\bg_BG.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ca_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cs_CZ.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cy_UK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\de_DE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\el_GR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\es_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\eu_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fi_FI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_CA.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_FR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\gl_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hr_HR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hu_HU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\is_IS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\it_IT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\lt_LT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nb_NO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nl_NL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pl_PL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pt_PT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ru_RU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sk_SK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sr_RS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sv_SE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\tr_TR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\vi_VN.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ko_KR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
</ItemGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="Resource Files\Localization">
<UniqueIdentifier>{e43059ae-37ac-4b28-84fb-18d1b3972b30}</UniqueIdentifier>
<Extensions>po;pot</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="PCH_UI.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="PCH_UI.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Main_UI.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Register_UI.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\EAPMethod_UI.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<None Include="EAPMethod_UI.def">
<Filter>Source Files</Filter>
</None>
<None Include="locale\EAPMethods.pot">
<Filter>Resource Files\Localization</Filter>
</None>
</ItemGroup>
<ItemGroup>
<POCompile Include="locale\ro_RO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\sl_SI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\bg_BG.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\ca_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\cs_CZ.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\cy_UK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\de_DE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\el_GR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\es_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\eu_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\fi_FI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\fr_CA.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\fr_FR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\gl_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\hr_HR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\hu_HU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\is_IS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\it_IT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\lt_LT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\nb_NO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\nl_NL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\pl_PL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\pt_PT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\ru_RU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\sk_SK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\sr_RS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\sv_SE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\tr_TR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\vi_VN.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\ko_KR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\et_EE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
</ItemGroup>
</Project>

BIN
EAPMethods/EAPMethod.def Normal file

Binary file not shown.

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="Common.props" />
</ImportGroup>
<ItemDefinitionGroup>
<Link>
<ModuleDefinitionFile>EAPMethod.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="PCH.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="Main.cpp" />
<ClCompile Include="PCH.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="Register.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="EAPMethod.def" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\EAPMethod.rc" />
</ItemGroup>
</Project>

BIN
EAPMethods/EAPMethod_UI.def Normal file

Binary file not shown.

View File

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="Common.props" />
</ImportGroup>
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeaderFile>PCH_UI.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<ModuleDefinitionFile>EAPMethod_UI.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="PCH_UI.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="Main_UI.cpp" />
<ClCompile Include="PCH_UI.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="Register_UI.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="EAPMethod_UI.def" />
<None Include="locale\EAPMethods.pot" />
</ItemGroup>
<ItemGroup>
<POCompile Include="locale\bg_BG.po" />
<POCompile Include="locale\ca_ES.po" />
<POCompile Include="locale\cs_CZ.po" />
<POCompile Include="locale\cy_UK.po" />
<POCompile Include="locale\de_DE.po" />
<POCompile Include="locale\el_GR.po" />
<POCompile Include="locale\es_ES.po" />
<POCompile Include="locale\et_EE.po" />
<POCompile Include="locale\eu_ES.po" />
<POCompile Include="locale\fi_FI.po" />
<POCompile Include="locale\fr_CA.po" />
<POCompile Include="locale\fr_FR.po" />
<POCompile Include="locale\gl_ES.po" />
<POCompile Include="locale\hr_HR.po" />
<POCompile Include="locale\hu_HU.po" />
<POCompile Include="locale\is_IS.po" />
<POCompile Include="locale\it_IT.po" />
<POCompile Include="locale\ko_KR.po" />
<POCompile Include="locale\lt_LT.po" />
<POCompile Include="locale\nb_NO.po" />
<POCompile Include="locale\nl_NL.po" />
<POCompile Include="locale\pl_PL.po" />
<POCompile Include="locale\pt_PT.po" />
<POCompile Include="locale\ru_RU.po" />
<POCompile Include="locale\sk_SK.po" />
<POCompile Include="locale\ro_RO.po" />
<POCompile Include="locale\sl_SI.po" />
<POCompile Include="locale\sr_RS.po" />
<POCompile Include="locale\sv_SE.po" />
<POCompile Include="locale\tr_TR.po" />
<POCompile Include="locale\vi_VN.po" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\EAPMethod_UI.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\lib\EAPBase_UI\build\EAPBase_UI.vcxproj">
<Project>{d4b54856-be1f-4937-a8f7-495125be76be}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib.vcxproj">
<Project>{d3e29951-d9f5-486d-a167-20ae8e90b1fa}</Project>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="..\build\Common.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<ModuleDefinitionFile>..\build\EAPMethod.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@ -1,125 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{331B6077-E3E2-4867-B93E-9D3F57280DE7}</ProjectGuid>
<RootNamespace>EAPTTLS</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\Win32.props" />
<Import Project="..\..\include\Debug.props" />
<Import Project="EAPTTLS.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\x64.props" />
<Import Project="..\..\include\Debug.props" />
<Import Project="EAPTTLS.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\Win32.props" />
<Import Project="..\..\include\Release.props" />
<Import Project="EAPTTLS.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\x64.props" />
<Import Project="..\..\include\Release.props" />
<Import Project="EAPTTLS.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<ItemGroup>
<ClInclude Include="StdAfx.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\Main.cpp" />
<ClCompile Include="StdAfx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="EAPTTLS.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\lib\EAPBase\build\EAPBase.vcxproj">
<Project>{ad6816a0-9600-4e01-8c49-39d03d1e791f}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\Events\build\Events.vcxproj">
<Project>{d63f24bd-92a0-4d6b-8b69-ed947e4d2b1b}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\MSCHAPv2\build\MSCHAPv2.vcxproj">
<Project>{86a6d6a0-4b7d-4134-be81-a5755c77584d}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\PAP\build\PAP.vcxproj">
<Project>{36b0cf8a-7794-46c3-8099-825ba962b4c7}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TLS\build\TLS.vcxproj">
<Project>{4d40cb8a-812e-4f12-b23a-31af743878e8}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TTLS\build\TTLS.vcxproj">
<Project>{ee0ef0d9-a475-4038-8637-5754724f65b0}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\WinStd\build\WinStd.vcxproj">
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="..\build\EAPMethod.def" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -1,21 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include "StdAfx.h"

View File

@ -1,24 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "../../lib/TTLS/include/Method.h"
#include "../../lib/TTLS/include/Module.h"

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="..\build\Common.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>EAPMETHOD_TYPE=21;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<ModuleDefinitionFile>..\build\EAPMethodUI.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@ -1,176 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{DD7A97CA-F18E-43B7-95C4-D06E6A291624}</ProjectGuid>
<RootNamespace>EAPTTLSUI</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\Win32.props" />
<Import Project="..\..\include\Debug.props" />
<Import Project="EAPTTLSUI.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\x64.props" />
<Import Project="..\..\include\Debug.props" />
<Import Project="EAPTTLSUI.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\Win32.props" />
<Import Project="..\..\include\Release.props" />
<Import Project="EAPTTLSUI.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\include\x64.props" />
<Import Project="..\..\include\Release.props" />
<Import Project="EAPTTLSUI.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<ItemGroup>
<ClInclude Include="StdAfx.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\Main_UI.cpp" />
<ClCompile Include="StdAfx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="EAPTTLSUI.rc" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\lib\EAPBase\build\EAPBase.vcxproj">
<Project>{ad6816a0-9600-4e01-8c49-39d03d1e791f}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\EAPBase_UI\build\EAPBase_UI.vcxproj">
<Project>{d4b54856-be1f-4937-a8f7-495125be76be}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\Events\build\Events.vcxproj">
<Project>{d63f24bd-92a0-4d6b-8b69-ed947e4d2b1b}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\MSCHAPv2\build\MSCHAPv2.vcxproj">
<Project>{86a6d6a0-4b7d-4134-be81-a5755c77584d}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\MSCHAPv2_UI\build\MSCHAPv2_UI.vcxproj">
<Project>{7af5b922-7c17-428a-97e0-09e3b41a684d}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\PAP\build\PAP.vcxproj">
<Project>{36b0cf8a-7794-46c3-8099-825ba962b4c7}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\PAP_UI\build\PAP_UI.vcxproj">
<Project>{3d309c2e-64ab-4bc4-a16d-468571a2bc1a}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TLS\build\TLS.vcxproj">
<Project>{4d40cb8a-812e-4f12-b23a-31af743878e8}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TLS_UI\build\TLS_UI.vcxproj">
<Project>{9a25c261-8ade-4938-8393-e857ef0e37e9}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TTLS\build\TTLS.vcxproj">
<Project>{ee0ef0d9-a475-4038-8637-5754724f65b0}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\TTLS_UI\build\TTLS_UI.vcxproj">
<Project>{42f0f0f4-c928-4860-a4e4-94991c2c3d90}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\WinStd\build\WinStd.vcxproj">
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
</ProjectReference>
<ProjectReference Include="..\..\lib\wxExtend\build\wxExtendLib.vcxproj">
<Project>{d3e29951-d9f5-486d-a167-20ae8e90b1fa}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="..\build\EAPMethodUI.def" />
<None Include="..\locale\EAPMethods.pot" />
</ItemGroup>
<ItemGroup>
<POCompile Include="..\locale\bg_BG.po" />
<POCompile Include="..\locale\ca_ES.po" />
<POCompile Include="..\locale\cs_CZ.po" />
<POCompile Include="..\locale\cy_UK.po" />
<POCompile Include="..\locale\de_DE.po" />
<POCompile Include="..\locale\el_GR.po" />
<POCompile Include="..\locale\es_ES.po" />
<POCompile Include="..\locale\eu_ES.po" />
<POCompile Include="..\locale\fi_FI.po" />
<POCompile Include="..\locale\fr_CA.po" />
<POCompile Include="..\locale\fr_FR.po" />
<POCompile Include="..\locale\gl_ES.po" />
<POCompile Include="..\locale\hr_HR.po" />
<POCompile Include="..\locale\hu_HU.po" />
<POCompile Include="..\locale\is_IS.po" />
<POCompile Include="..\locale\it_IT.po" />
<POCompile Include="..\locale\ko_KR.po" />
<POCompile Include="..\locale\lt_LT.po" />
<POCompile Include="..\locale\nb_NO.po" />
<POCompile Include="..\locale\nl_NL.po" />
<POCompile Include="..\locale\pl_PL.po" />
<POCompile Include="..\locale\pt_PT.po" />
<POCompile Include="..\locale\ru_RU.po" />
<POCompile Include="..\locale\sk_SK.po" />
<POCompile Include="..\locale\sl_SI.po" />
<POCompile Include="..\locale\sr_RS.po" />
<POCompile Include="..\locale\sv_SE.po" />
<POCompile Include="..\locale\tr_TR.po" />
<POCompile Include="..\locale\vi_VN.po" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\..\include\xgettext.targets" />
</ImportGroup>
</Project>

View File

@ -1,21 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include "StdAfx.h"

View File

@ -1,23 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "../../lib/TTLS_UI/include/Module.h"

View File

@ -0,0 +1,9 @@
/*-1.idt
/*-2.idt
/*-2.idtx
/*.Binary-1
/*.Binary-2
/*.Icon-1
/*.Icon-2
/*.lst
/*.msm

Binary file not shown.

Binary file not shown.

Binary file not shown.

895
EAPMethods/Main.cpp Normal file
View File

@ -0,0 +1,895 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH.h"
#pragma comment(lib, "Ws2_32.lib")
using namespace std;
using namespace winstd;
EAPMETHOD_PEER g_peer;
///
/// DLL main entry point
///
/// \sa [DllMain entry point](https://msdn.microsoft.com/en-us/library/windows/desktop/ms682583.aspx)
///
BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD fdwReason, _In_ LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
if (fdwReason == DLL_PROCESS_ATTACH) {
#ifdef _DEBUG
//Sleep(10000);
_CrtSetDbgFlag(_crtDbgFlag | _CRTDBG_ALLOC_MEM_DF | _CRTDBG_CHECK_ALWAYS_DF | _CRTDBG_CHECK_CRT_DF | _CRTDBG_LEAK_CHECK_DF);
#endif
g_peer.m_instance = hinstDLL;
}
return TRUE;
}
///
/// Releases all memory associated with an opaque user interface context data buffer.
///
/// \sa [EapPeerFreeMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363606.aspx)
///
_Use_decl_annotations_
VOID WINAPI EapPeerFreeMemory(void *pUIContextData)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (pUIContextData)
g_peer.free_memory((BYTE*)pUIContextData);
}
///
/// Releases error-specific memory allocated by the EAP peer method.
///
/// \sa [EapPeerFreeErrorMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363605.aspx)
///
_Use_decl_annotations_
VOID WINAPI EapPeerFreeErrorMemory(EAP_ERROR *ppEapError)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (ppEapError)
g_peer.free_error_memory(ppEapError);
}
///
/// Obtains a set of function pointers for an implementation of the EAP peer method currently loaded on the EapHost service.
///
/// \sa [EapPeerGetInfo function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363608.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerGetInfo(EAP_TYPE* pEapType, EAP_PEER_METHOD_ROUTINES* pEapPeerMethodRoutines, EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapPeerMethodRoutines)
memset(pEapPeerMethodRoutines, 0, sizeof(*pEapPeerMethodRoutines));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pEapType || !pEapPeerMethodRoutines)
return dwResult = ERROR_INVALID_PARAMETER;
if (pEapType->type != EAPMETHOD_TYPE)
return dwResult = ERROR_NOT_SUPPORTED;
pEapPeerMethodRoutines->dwVersion =
((PRODUCT_VERSION_MAJ & 0xff) << 24) |
((PRODUCT_VERSION_MIN & 0xff) << 16) |
((PRODUCT_VERSION_REV & 0xff) << 8) |
(PRODUCT_VERSION_BUILD & 0xff);
pEapPeerMethodRoutines->pEapType = NULL;
pEapPeerMethodRoutines->EapPeerInitialize = EapPeerInitialize;
pEapPeerMethodRoutines->EapPeerShutdown = EapPeerShutdown;
pEapPeerMethodRoutines->EapPeerBeginSession = EapPeerBeginSession;
pEapPeerMethodRoutines->EapPeerEndSession = EapPeerEndSession;
pEapPeerMethodRoutines->EapPeerSetCredentials = NULL; // Always NULL unless we want to use generic credential UI
pEapPeerMethodRoutines->EapPeerGetIdentity = EapPeerGetIdentity;
pEapPeerMethodRoutines->EapPeerProcessRequestPacket = EapPeerProcessRequestPacket;
pEapPeerMethodRoutines->EapPeerGetResponsePacket = EapPeerGetResponsePacket;
pEapPeerMethodRoutines->EapPeerGetResult = EapPeerGetResult;
pEapPeerMethodRoutines->EapPeerGetUIContext = EapPeerGetUIContext;
pEapPeerMethodRoutines->EapPeerSetUIContext = EapPeerSetUIContext;
pEapPeerMethodRoutines->EapPeerGetResponseAttributes = EapPeerGetResponseAttributes;
pEapPeerMethodRoutines->EapPeerSetResponseAttributes = EapPeerSetResponseAttributes;
return dwResult;
}
#pragma warning(push)
#pragma warning(disable: 4702) // Compiler is smart enough to find out the initialize() method is empty => never throws an exception.
///
/// Initializes an EAP peer method for EapHost.
///
/// \sa [EapPeerInitialize function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363613.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerInitialize(EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
try {
g_peer.initialize();
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
#pragma warning(pop)
#pragma warning(push)
#pragma warning(disable: 4702) // Compiler is smart enough to find out the shutdown() method is empty => never throws an exception.
///
/// Shuts down the EAP method and prepares to unload its corresponding DLL.
///
/// \sa [EapPeerShutdown function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363627.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerShutdown(EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
try {
g_peer.shutdown();
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
#pragma warning(pop)
///
/// Returns the user data and user identity after being called by EapHost.
///
/// \sa [EapPeerGetIdentity function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363607.aspx)
///
_Use_decl_annotations_
DWORD APIENTRY EapPeerGetIdentity(
DWORD dwFlags,
DWORD dwConnectionDataSize,
const BYTE *pConnectionData,
DWORD dwUserDataSize,
const BYTE *pUserData,
HANDLE hTokenImpersonateUser,
BOOL *pfInvokeUI,
DWORD *pdwUserDataOutSize,
BYTE **ppUserDataOut,
WCHAR **ppwszIdentity,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pfInvokeUI)
*pfInvokeUI = FALSE;
if (pdwUserDataOutSize)
*pdwUserDataOutSize = 0;
if (ppUserDataOut)
*ppUserDataOut = NULL;
if (ppwszIdentity)
*ppwszIdentity = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pConnectionData && dwConnectionDataSize || !pUserData && dwUserDataSize || !pfInvokeUI || !pdwUserDataOutSize || !ppUserDataOut || !ppwszIdentity)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_identity(dwFlags, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, ppUserDataOut, pdwUserDataOutSize, hTokenImpersonateUser, pfInvokeUI, ppwszIdentity);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Starts an EAP authentication session on the peer EapHost using the EAP method.
///
/// \sa [EapPeerBeginSession function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363600.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerBeginSession(
DWORD dwFlags,
const EapAttributes *pAttributeArray,
HANDLE hTokenImpersonateUser,
DWORD dwConnectionDataSize,
/*const*/ BYTE *pConnectionData,
DWORD dwUserDataSize,
/*const*/ BYTE *pUserData,
DWORD dwMaxSendPacketSize,
EAP_SESSION_HANDLE *phSession,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (phSession)
*phSession = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pConnectionData && dwConnectionDataSize || !pUserData && dwUserDataSize || !phSession)
return dwResult = ERROR_INVALID_PARAMETER;
try {
*phSession = g_peer.begin_session(dwFlags, pAttributeArray, hTokenImpersonateUser, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, dwMaxSendPacketSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Ends an EAP authentication session for the EAP method.
///
/// \sa [EapPeerEndSession function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363604.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerEndSession(
EAP_SESSION_HANDLE hSession,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.end_session(hSession);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Processes a packet received by EapHost from a supplicant.
///
/// \sa [EapPeerProcessRequestPacket function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363621.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerProcessRequestPacket(
EAP_SESSION_HANDLE hSession,
DWORD dwReceivedPacketSize,
/*const*/ EapPacket *pReceivedPacket,
EapPeerMethodOutput *pEapOutput,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapOutput)
memset(pEapOutput, 0, sizeof(*pEapOutput));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pReceivedPacket || dwReceivedPacketSize < sizeof(EapPacket) || pReceivedPacket->Data[0] != EAPMETHOD_TYPE || !pEapOutput)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.process_request_packet(hSession, pReceivedPacket, dwReceivedPacketSize, pEapOutput);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Obtains a response packet from the EAP method.
///
/// \sa [EapPeerGetResponsePacket function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363610.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerGetResponsePacket(
EAP_SESSION_HANDLE hSession,
DWORD *pdwSendPacketSize,
EapPacket *pSendPacket,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pdwSendPacketSize || !pSendPacket && *pdwSendPacketSize)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_response_packet(hSession, pSendPacket, pdwSendPacketSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Obtains the result of an authentication session from the EAP method.
///
/// \sa [EapPeerGetResult function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363611.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerGetResult(
EAP_SESSION_HANDLE hSession,
EapPeerMethodResultReason reason,
EapPeerMethodResult *pResult,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pResult)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_result(hSession, reason, pResult);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Obtains the user interface context from the EAP method.
///
/// \note This function is always followed by the `EapPeerInvokeInteractiveUI()` function, which is followed by the `EapPeerSetUIContext()` function.
///
/// \sa [EapPeerGetUIContext function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363612.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerGetUIContext(
EAP_SESSION_HANDLE hSession,
DWORD *pdwUIContextDataSize,
BYTE **ppUIContextData,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pdwUIContextDataSize)
*pdwUIContextDataSize = 0;
if (ppUIContextData)
*ppUIContextData = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pdwUIContextDataSize || !ppUIContextData)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_ui_context(hSession, ppUIContextData, pdwUIContextDataSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Provides a user interface context to the EAP method.
///
/// \note This function is called after the UI has been raised through the `EapPeerGetUIContext()` function.
///
/// \sa [EapPeerSetUIContext function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363626.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerSetUIContext(
EAP_SESSION_HANDLE hSession,
DWORD dwUIContextDataSize,
const BYTE *pUIContextData,
EapPeerMethodOutput *pEapOutput,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapOutput)
memset(pEapOutput, 0, sizeof(*pEapOutput));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pUIContextData && dwUIContextDataSize || !pEapOutput)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.set_ui_context(hSession, pUIContextData, dwUIContextDataSize, pEapOutput);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Obtains an array of EAP response attributes from the EAP method.
///
/// \sa [EapPeerGetResponseAttributes function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363609.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerGetResponseAttributes(
EAP_SESSION_HANDLE hSession,
EapAttributes *pAttribs,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pAttribs)
memset(pAttribs, 0, sizeof(*pAttribs));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pAttribs)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_response_attributes(hSession, pAttribs);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Provides an updated array of EAP response attributes to the EAP method.
///
/// \sa [EapPeerSetResponseAttributes function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363625.aspx)
///
//_Use_decl_annotations_
DWORD APIENTRY EapPeerSetResponseAttributes(
EAP_SESSION_HANDLE hSession,
/*const*/ EapAttributes *pAttribs,
EapPeerMethodOutput *pEapOutput,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapOutput)
memset(pEapOutput, 0, sizeof(*pEapOutput));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!hSession || !pEapOutput)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.set_response_attributes(hSession, pAttribs, pEapOutput);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Defines the implementation of an EAP method-specific function that retrieves the properties of an EAP method given the connection and user data.
///
/// \sa [EapPeerGetMethodProperties function](https://msdn.microsoft.com/en-us/library/windows/desktop/hh706636.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerGetMethodProperties(
DWORD dwVersion,
DWORD dwFlags,
EAP_METHOD_TYPE eapMethodType,
HANDLE hUserImpersonationToken,
DWORD dwConnectionDataSize,
/*const*/ BYTE *pConnectionData,
DWORD dwUserDataSize,
/*const*/ BYTE *pUserData,
EAP_METHOD_PROPERTY_ARRAY *pMethodPropertyArray,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pMethodPropertyArray)
memset(pMethodPropertyArray, 0, sizeof(*pMethodPropertyArray));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pConnectionData && dwConnectionDataSize || !pUserData && dwUserDataSize || !pMethodPropertyArray)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.get_method_properties(dwVersion, dwFlags, hUserImpersonationToken, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, pMethodPropertyArray);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Converts XML into the configuration BLOB. The XML based credentials can come from group policy or from a system administrator.
///
/// \sa [EapPeerCredentialsXml2Blob function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363603.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerCredentialsXml2Blob(
DWORD dwFlags,
EAP_METHOD_TYPE eapMethodType,
IXMLDOMDocument2 *pCredentialsDoc,
const BYTE *pConnectionData,
DWORD dwConnectionDataSize,
BYTE **ppCredentialsOut,
DWORD *pdwCredentialsOutSize,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppCredentialsOut)
*ppCredentialsOut = NULL;
if (pdwCredentialsOutSize)
*pdwCredentialsOutSize = 0;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pCredentialsDoc || !pConnectionData && dwConnectionDataSize || !ppCredentialsOut || !pdwCredentialsOutSize)
return dwResult = ERROR_INVALID_PARAMETER;
// <Credentials>
com_obj<IXMLDOMNode> pXmlElCredentials;
if (FAILED(eapxml::select_node(pCredentialsDoc, bstr(L"//EapHostUserCredentials/Credentials"), pXmlElCredentials)))
return dwResult = g_peer.log_error(ppEapError, ERROR_NOT_FOUND, _T(__FUNCTION__) _T(" Error selecting <EapHostUserCredentials><Credentials> element."));
// Load credentials.
pCredentialsDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\""));
try {
g_peer.credentials_xml2blob(dwFlags, pXmlElCredentials, pConnectionData, dwConnectionDataSize, ppCredentialsOut, pdwCredentialsOutSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Defines the implementation of an EAP method-specific function that obtains the EAP Single-Sign-On (SSO) credential input fields for an EAP method.
///
/// \sa [EapPeerQueryCredentialInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363622.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerQueryCredentialInputFields(
HANDLE hUserImpersonationToken,
EAP_METHOD_TYPE eapMethodType,
DWORD dwFlags,
DWORD dwConnectionDataSize,
/*const*/ BYTE *pConnectionData,
EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldsArray,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapConfigInputFieldsArray)
memset(pEapConfigInputFieldsArray, 0, sizeof(*pEapConfigInputFieldsArray));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pConnectionData && dwConnectionDataSize || !pEapConfigInputFieldsArray)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.query_credential_input_fields(hUserImpersonationToken, dwFlags, dwConnectionDataSize, pConnectionData, pEapConfigInputFieldsArray);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Defines the implementation of an EAP method function that obtains the user BLOB data provided in an interactive Single-Sign-On (SSO) UI raised on the supplicant.
///
/// \sa [EapPeerQueryUserBlobFromCredentialInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204697.aspx)
///
#pragma warning(suppress: 6101) // Function is incorrectly annotated and code analysis gets confused
_Use_decl_annotations_
DWORD WINAPI EapPeerQueryUserBlobFromCredentialInputFields(
HANDLE hUserImpersonationToken,
EAP_METHOD_TYPE eapMethodType,
DWORD dwFlags,
DWORD dwConnectionDataSize,
/*const*/ BYTE *pConnectionData,
const EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray,
DWORD *pdwUsersBlobSize,
BYTE **ppUserBlob,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pConnectionData && dwConnectionDataSize || !pEapConfigInputFieldArray || !pdwUsersBlobSize || !ppUserBlob)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.query_user_blob_from_credential_input_fields(hUserImpersonationToken, dwFlags, dwConnectionDataSize, pConnectionData, pEapConfigInputFieldArray, pdwUsersBlobSize, ppUserBlob);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Defines the implementation of an EAP method API that provides the input fields for interactive UI components to be raised on the supplicant.
///
/// \sa [EapPeerQueryInteractiveUIInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204695.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerQueryInteractiveUIInputFields(
DWORD dwVersion,
DWORD dwFlags,
DWORD dwUIContextDataSize,
const BYTE *pUIContextData,
EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData,
EAP_ERROR **ppEapError,
LPVOID *ppvReserved)
{
UNREFERENCED_PARAMETER(ppvReserved);
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pEapInteractiveUIData)
memset(pEapInteractiveUIData, 0, sizeof(*pEapInteractiveUIData));
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pUIContextData && dwUIContextDataSize || !pEapInteractiveUIData)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.query_interactive_ui_input_fields(dwVersion, dwFlags, dwUIContextDataSize, pUIContextData, pEapInteractiveUIData);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Converts user information into a user BLOB that can be consumed by EapHost run-time functions.
///
/// \sa [EapPeerQueryUIBlobFromInteractiveUIInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204696.aspx)
///
#pragma warning(suppress: 6387) // Function is incorrectly annotated and code analysis gets confused
#pragma warning(suppress: 28196)
_Use_decl_annotations_
DWORD WINAPI EapPeerQueryUIBlobFromInteractiveUIInputFields(
DWORD dwVersion,
DWORD dwFlags,
DWORD dwUIContextDataSize,
const BYTE *pUIContextData,
const EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData,
DWORD *pdwDataFromInteractiveUISize,
BYTE **ppDataFromInteractiveUI,
EAP_ERROR **ppEapError,
LPVOID *ppvReserved)
{
UNREFERENCED_PARAMETER(ppvReserved);
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pdwDataFromInteractiveUISize)
*pdwDataFromInteractiveUISize = 0;
if (ppDataFromInteractiveUI)
*ppDataFromInteractiveUI = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pUIContextData && dwUIContextDataSize || !pEapInteractiveUIData || !pdwDataFromInteractiveUISize || !ppDataFromInteractiveUI)
return dwResult = ERROR_INVALID_PARAMETER;
try {
g_peer.query_ui_blob_from_interactive_ui_input_fields(dwVersion, dwFlags, dwUIContextDataSize, pUIContextData, pEapInteractiveUIData, pdwDataFromInteractiveUISize, ppDataFromInteractiveUI);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}

359
EAPMethods/Main_UI.cpp Normal file
View File

@ -0,0 +1,359 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH_UI.h"
#pragma comment(lib, "msxml6.lib")
using namespace std;
using namespace winstd;
HANDLE g_act_ctx = NULL;
EAPMETHOD_PEER_UI g_peer;
///
/// DLL main entry point
///
/// \sa [DllMain entry point](https://msdn.microsoft.com/en-us/library/windows/desktop/ms682583.aspx)
///
BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD fdwReason, _In_ LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
if (fdwReason == DLL_PROCESS_ATTACH) {
#ifdef _DEBUG
//Sleep(10000);
_CrtSetDbgFlag(_crtDbgFlag | _CRTDBG_ALLOC_MEM_DF | _CRTDBG_CHECK_ALWAYS_DF | _CRTDBG_CHECK_CRT_DF | _CRTDBG_LEAK_CHECK_DF);
#endif
g_peer.m_instance = hinstDLL;
#if _WIN32_WINNT >= _WIN32_WINNT_VISTA
// Declare our DllHost process as DPI-aware.
SetProcessDPIAware();
#endif
// Save current activation context, as proper activation context is set at this time only (LoadLibrary() call).
GetCurrentActCtx(&g_act_ctx);
} else if (fdwReason == DLL_PROCESS_DETACH) {
if (g_act_ctx)
ReleaseActCtx(g_act_ctx);
}
return TRUE;
}
///
/// Releases all memory associated with an opaque user interface context data buffer.
///
/// \sa [EapPeerFreeMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363606.aspx)
///
_Use_decl_annotations_
VOID WINAPI EapPeerFreeMemory(void *pUIContextData)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (pUIContextData)
g_peer.free_memory((BYTE*)pUIContextData);
}
///
/// Releases error-specific memory allocated by the EAP peer method.
///
/// \sa [EapPeerFreeErrorMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363605.aspx)
///
_Use_decl_annotations_
VOID WINAPI EapPeerFreeErrorMemory(EAP_ERROR *ppEapError)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (ppEapError)
g_peer.free_error_memory(ppEapError);
}
///
/// Converts XML into the configuration BLOB.
///
/// \sa [EapPeerConfigXml2Blob function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363602.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerConfigXml2Blob(
DWORD dwFlags,
EAP_METHOD_TYPE eapMethodType,
IXMLDOMDocument2 *pConfigDoc,
BYTE **pConnectionDataOut,
DWORD *pdwConnectionDataOutSize,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pConnectionDataOut)
*pConnectionDataOut = NULL;
if (pdwConnectionDataOutSize)
*pdwConnectionDataOutSize = 0;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pConfigDoc || !pConnectionDataOut || !pdwConnectionDataOutSize)
return dwResult = ERROR_INVALID_PARAMETER;
// Configure XML selection namespaces used.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\" xmlns:eaphostconfig=\"http://www.microsoft.com/provisioning/EapHostConfig\""));
// <Config>
com_obj<IXMLDOMElement> pXmlElConfig;
if (FAILED(eapxml::select_element(pConfigDoc, bstr(L"//eaphostconfig:Config"), pXmlElConfig)))
return dwResult = g_peer.log_error(ppEapError, ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" Error reading <Config> element."));
// Load configuration.
try {
g_peer.config_xml2blob(dwFlags, pXmlElConfig, pConnectionDataOut, pdwConnectionDataOutSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Converts the configuration BLOB to XML.
///
/// The configuration BLOB is returned in the ppConnectionDataOut parameter of the EapPeerInvokeConfigUI function.
///
/// \sa [EapPeerConfigBlob2Xml function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363601.aspx)
///
_Use_decl_annotations_
DWORD WINAPI EapPeerConfigBlob2Xml(
DWORD dwFlags,
EAP_METHOD_TYPE eapMethodType,
const BYTE *pConnectionData,
DWORD dwConnectionDataSize,
IXMLDOMDocument2 **ppConfigDoc,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (ppConfigDoc)
*ppConfigDoc = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (eapMethodType.eapType.type != EAPMETHOD_TYPE || eapMethodType.dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
if (!pConnectionData && dwConnectionDataSize || !ppConfigDoc)
return dwResult = ERROR_INVALID_PARAMETER;
HRESULT hr;
// Create configuration XML document.
com_obj<IXMLDOMDocument2> pConfigDoc;
if (FAILED(hr = CoCreateInstance(CLSID_DOMDocument60, NULL, CLSCTX_INPROC_SERVER, pConfigDoc)))
return dwResult = g_peer.log_error(ppEapError, HRESULT_CODE(hr), _T(__FUNCTION__) _T(" Error creating XML document."));
pConfigDoc->put_async(VARIANT_FALSE);
// Load empty XML configuration.
VARIANT_BOOL isSuccess = VARIANT_FALSE;
if (FAILED((hr = pConfigDoc->loadXML(L"<Config xmlns=\"http://www.microsoft.com/provisioning/EapHostConfig\"></Config>", &isSuccess))))
return dwResult = g_peer.log_error(ppEapError, HRESULT_CODE(hr), _T(__FUNCTION__) _T(" Error loading XML document template."));
if (!isSuccess)
return dwResult = g_peer.log_error(ppEapError, ERROR_XML_PARSE_ERROR, _T(__FUNCTION__) _T(" Loading XML template failed."));
// Configure XML selection namespaces used.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\" xmlns:eaphostconfig=\"http://www.microsoft.com/provisioning/EapHostConfig\""));
// Select <Config> node.
com_obj<IXMLDOMNode> pXmlElConfig;
if (FAILED(eapxml::select_node(pConfigDoc, bstr(L"eaphostconfig:Config"), pXmlElConfig)))
return dwResult = g_peer.log_error(ppEapError, ERROR_NOT_FOUND, _T(__FUNCTION__) _T(" Error selecting <Config> element."));
// Save configuration.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\""));
try {
g_peer.config_blob2xml(dwFlags, pConnectionData, dwConnectionDataSize, pConfigDoc, pXmlElConfig);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
return dwResult = ERROR_INVALID_DATA;
}
*ppConfigDoc = pConfigDoc.detach();
return dwResult;
}
///
/// Raises the EAP method's specific connection configuration user interface dialog on the client.
///
/// \sa [EapPeerInvokeConfigUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363614.aspx)
///
//_Use_decl_annotations_
DWORD WINAPI EapPeerInvokeConfigUI(
const EAP_METHOD_TYPE *pEapType,
HWND hwndParent,
DWORD dwFlags,
DWORD dwConnectionDataInSize,
const BYTE *pConnectionDataIn,
DWORD *pdwConnectionDataOutSize,
BYTE **ppConnectionDataOut,
EAP_ERROR **ppEapError)
{
UNREFERENCED_PARAMETER(dwFlags);
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pdwConnectionDataOutSize)
*pdwConnectionDataOutSize = 0;
if (ppConnectionDataOut)
*ppConnectionDataOut = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pEapType || !pConnectionDataIn && dwConnectionDataInSize || !pdwConnectionDataOutSize || !ppConnectionDataOut)
return dwResult = ERROR_INVALID_PARAMETER;
if (pEapType->eapType.type != EAPMETHOD_TYPE || pEapType->dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
try {
g_peer.invoke_config_ui(hwndParent, pConnectionDataIn, dwConnectionDataInSize, ppConnectionDataOut, pdwConnectionDataOutSize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Raises a custom interactive user interface dialog to obtain user identity information for the EAP method on the client.
///
/// \sa [EapPeerInvokeIdentityUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363615.aspx)
///
//_Use_decl_annotations_
DWORD WINAPI EapPeerInvokeIdentityUI(
const EAP_METHOD_TYPE *pEapType,
DWORD dwFlags,
HWND hwndParent,
DWORD dwConnectionDataSize,
const BYTE *pConnectionData,
DWORD dwUserDataSize,
const BYTE *pUserData,
DWORD *pdwUserDataOutSize,
BYTE **ppUserDataOut,
LPWSTR *ppwszIdentity,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pdwUserDataOutSize)
*pdwUserDataOutSize = 0;
if (ppUserDataOut)
*ppUserDataOut = NULL;
if (ppwszIdentity)
*ppwszIdentity = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pEapType || !pConnectionData && dwConnectionDataSize || !pUserData && dwUserDataSize || !pdwUserDataOutSize || !ppUserDataOut || !ppwszIdentity)
return dwResult = ERROR_INVALID_PARAMETER;
if (pEapType->eapType.type != EAPMETHOD_TYPE || pEapType->dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
try {
g_peer.invoke_identity_ui(hwndParent, dwFlags, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, ppUserDataOut, pdwUserDataOutSize, ppwszIdentity);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
///
/// Raises a custom interactive user interface dialog for the EAP method on the client.
///
/// \sa [EapPeerInvokeInteractiveUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363616.aspx)
///
//_Use_decl_annotations_
DWORD WINAPI EapPeerInvokeInteractiveUI(
const EAP_METHOD_TYPE *pEapType,
HWND hwndParent,
DWORD dwUIContextDataSize,
const BYTE *pUIContextData,
DWORD *pdwDataFromInteractiveUISize,
BYTE **ppDataFromInteractiveUI,
EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Initialize output parameters.
if (pdwDataFromInteractiveUISize)
*pdwDataFromInteractiveUISize = 0;
if (ppDataFromInteractiveUI)
*ppDataFromInteractiveUI = NULL;
if (ppEapError)
*ppEapError = NULL;
// Parameter check
if (!pEapType || !pUIContextData && dwUIContextDataSize || !pdwDataFromInteractiveUISize || !ppDataFromInteractiveUI)
return dwResult = ERROR_INVALID_PARAMETER;
if (pEapType->eapType.type != EAPMETHOD_TYPE || pEapType->dwAuthorId != EAPMETHOD_AUTHOR_ID)
return dwResult = ERROR_NOT_SUPPORTED;
try {
g_peer.invoke_interactive_ui(hwndParent, pUIContextData, dwUIContextDataSize, ppDataFromInteractiveUI, pdwDataFromInteractiveUISize);
} catch (std::exception &err) {
dwResult = g_peer.log_error(ppEapError, err);
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}

7
EAPMethods/PCH.cpp Normal file
View File

@ -0,0 +1,7 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH.h"

17
EAPMethods/PCH.h Normal file
View File

@ -0,0 +1,17 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#pragma once
#if EAPMETHOD_TYPE == 21
#include "../lib/TTLS/include/Method.h"
#include "../lib/TTLS/include/Module.h"
#define EAPMETHOD_PEER eap::peer_ttls
#else
#error Unknown EAP Method type.
#endif
extern EAPMETHOD_PEER g_peer;

7
EAPMethods/PCH_UI.cpp Normal file
View File

@ -0,0 +1,7 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH_UI.h"

19
EAPMethods/PCH_UI.h Normal file
View File

@ -0,0 +1,19 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#pragma once
// Prevent warnings from wxWidgets headers
#define _CRT_SECURE_NO_WARNINGS
#if EAPMETHOD_TYPE == 21
#include "../lib/TTLS_UI/include/Module.h"
#define EAPMETHOD_PEER_UI eap::peer_ttls_ui
#else
#error Unknown EAP Method type.
#endif
extern EAPMETHOD_PEER_UI g_peer;

89
EAPMethods/Register.cpp Normal file
View File

@ -0,0 +1,89 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2020-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH.h"
using namespace std;
using namespace winstd;
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ LPCTSTR sValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_SZ, reinterpret_cast<LPCBYTE>(sValue), (DWORD)((_tcslen(sValue) + 1) * sizeof(tstring::value_type)));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ const tstring &sValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_SZ, reinterpret_cast<LPCBYTE>(sValue.c_str()), (DWORD)((sValue.length() + 1) * sizeof(tstring::value_type)));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ DWORD dwValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_DWORD, reinterpret_cast<LPCBYTE>(&dwValue), sizeof(dwValue));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
///
/// Registers method in EapHost registry
///
/// \returns S_OK if successful; E_FAIL otherwise
///
STDAPI DllRegisterServer()
{
try {
tstring sz, sz2;
reg_key key_methods, key_author, key_method;
LSTATUS s = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("SYSTEM\\CurrentControlSet\\services\\EapHost\\Methods"), 0, KEY_CREATE_SUB_KEY, key_methods);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
sprintf(sz, _T("%u"), EAPMETHOD_AUTHOR_ID);
s = RegCreateKeyEx(key_methods, sz.c_str(), NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, key_author, NULL);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
set_value(key_author, NULL, _T(PRODUCT_NAME_STR));
sprintf(sz, _T("%u"), EAPMETHOD_TYPE);
s = RegCreateKeyEx(key_author, sz.c_str(), NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, key_method, NULL);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
if (!GetModuleFileName(g_peer.m_instance, sz)) throw win_runtime_error("GetModuleFileName failed.");
sprintf(sz2, _T("@%s,-1"), sz.c_str());
set_value(key_method, _T("PeerDllPath") , sz);
set_value(key_method, _T("PeerFriendlyName"), sz2);
set_value(key_method, _T("Properties") , (DWORD)389871807);
return S_OK;
} catch(win_runtime_error &err) {
OutputDebugStr(_T("%hs (error %u)\n"), err.what(), err.number());
return E_FAIL;
} catch(...) {
OutputDebugStr(_T("Registering DLL failed.\n"));
return E_FAIL;
}
}
///
/// Unregisters method from EapHost registry
///
/// \returns Always S_OK
///
STDAPI DllUnregisterServer()
{
try {
tstring sz;
reg_key key_methods;
LSTATUS s = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("SYSTEM\\CurrentControlSet\\services\\EapHost\\Methods"), 0, KEY_READ, key_methods);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
sprintf(sz, _T("%u\\%u"), EAPMETHOD_AUTHOR_ID, EAPMETHOD_TYPE);
if (!key_methods.delete_subkey(sz.c_str())) throw win_runtime_error();
} catch(...) {}
return S_OK;
}

View File

@ -0,0 +1,90 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2020-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH_UI.h"
using namespace std;
using namespace winstd;
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ LPCTSTR sValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_SZ, reinterpret_cast<LPCBYTE>(sValue), (DWORD)((_tcslen(sValue) + 1) * sizeof(tstring::value_type)));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ const tstring &sValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_SZ, reinterpret_cast<LPCBYTE>(sValue.c_str()), (DWORD)((sValue.length() + 1) * sizeof(tstring::value_type)));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
static void set_value(_In_ HKEY hKey, _In_opt_z_ LPCTSTR lpValueName, _In_ DWORD dwValue)
{
LSTATUS s = RegSetValueEx(hKey, lpValueName, 0, REG_DWORD, reinterpret_cast<LPCBYTE>(&dwValue), sizeof(dwValue));
if (s != ERROR_SUCCESS)
throw win_runtime_error(s, "RegSetValueEx failed.");
}
///
/// Registers method UI in EapHost registry
///
/// \returns S_OK if successful; E_FAIL otherwise
///
STDAPI DllRegisterServer()
{
try {
tstring sz;
reg_key key_methods, key_author, key_method;
LSTATUS s = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("SYSTEM\\CurrentControlSet\\services\\EapHost\\Methods"), 0, KEY_CREATE_SUB_KEY, key_methods);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
sprintf(sz, _T("%u"), EAPMETHOD_AUTHOR_ID);
s = RegCreateKeyEx(key_methods, sz.c_str(), NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, key_author, NULL);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
set_value(key_author, NULL, _T(PRODUCT_NAME_STR));
sprintf(sz, _T("%u"), EAPMETHOD_TYPE);
s = RegCreateKeyEx(key_author, sz.c_str(), NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, key_method, NULL);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
if (!GetModuleFileName(g_peer.m_instance, sz)) throw win_runtime_error("GetModuleFileName failed.");
set_value(key_method, _T("PeerConfigUIPath") , sz);
set_value(key_method, _T("PeerIdentityPath") , sz);
set_value(key_method, _T("PeerInteractiveUIPath") , sz);
set_value(key_method, _T("PeerInvokePasswordDialog"), (DWORD)0);
set_value(key_method, _T("PeerInvokeUsernameDialog"), (DWORD)0);
return S_OK;
} catch(win_runtime_error &err) {
OutputDebugStr(_T("%hs (error %u)\n"), err.what(), err.number());
return E_FAIL;
} catch(...) {
OutputDebugStr(_T("Registering DLL failed.\n"));
return E_FAIL;
}
}
///
/// Unregisters method UI from EapHost registry
///
/// \returns Always S_OK
///
STDAPI DllUnregisterServer()
{
try {
tstring sz;
reg_key key_methods;
LSTATUS s = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("SYSTEM\\CurrentControlSet\\services\\EapHost\\Methods"), 0, KEY_READ, key_methods);
if (s != ERROR_SUCCESS) throw win_runtime_error(s);
sprintf(sz, _T("%u\\%u"), EAPMETHOD_AUTHOR_ID, EAPMETHOD_TYPE);
key_methods.delete_subkey(sz.c_str());
} catch(...) {}
return S_OK;
}

View File

@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_PropertySheetDisplayName>EAP Method Common</_PropertySheetDisplayName>
<OutDir>..\..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(ProjectDir);..\..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\include;..\..\lib\WinStd\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

Binary file not shown.

Binary file not shown.

View File

@ -2,23 +2,93 @@
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid "Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
@ -44,233 +114,341 @@ msgstr ""
msgid "Opens dialog with provider settings"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid "Select this option if you would like to use credentials stored in Windows Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid "Select this option if you would like to store credentials as a part of profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
msgid "Select this option if you would like to store credentials as a part of profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid "Describe your organization to customize user prompts. When organization is introduced, end-users find program messages easier to understand and act."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid "Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid "Assign your organization a unique ID to allow sharing the same credential set across different network profiles."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid "Your configuration can be locked to prevent accidental modification by end-users. Users will only be allowed to enter credentials."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid "&Lock this configuration and prevent any further modification via user interface."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid "%s has pre-set parts of this configuration. Those parts are locked to prevent accidental modification."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid "Previous attempt to connect reported your credentials are being changed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid "The %s version installed on this computer logs credentials in visible and easy to read way."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr ""
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
@ -284,7 +462,7 @@ msgid "Server Trust"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid "Describe the servers you trust to prevent credential interception in case of man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
@ -315,223 +493,151 @@ msgstr ""
msgid "&Remove CA"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid "A semicolon delimited list of acceptable server FQDN names; blank to skip name check; Unicode characters allowed"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid "Your identity (username@domain) to override one from certificate; or blank to use one provided in certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid "Are you sure you want to permanently remove %s provider from configuration?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -1,35 +1,114 @@
#
# Translators:
# eduki <ecercos@xtec.cat>, 2018
# Joan Montané, 2019
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: eduki <ecercos@xtec.cat>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Catalan (Spain) (https://www.transifex.com/eduroam_devel/teams/11799/ca_ES/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ca_ES\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Segur que voleu esborrar permanentment el proveidor %s de la configuració?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Alerta"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Credencials EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Ajustos del proveidor"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s Credencials d'usuari"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Error escrivint les credencial a l'Administrador de credencials: %hs (error "
"%u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Ha fallat l'escriptura de les credencials."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Ha fallat l'esborrat de credencials (error %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(error %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(error)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(ID buit)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Recordar"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Marqueu si voleu desar les credencials"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(La vostra organització)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:38
msgid "Adds new provider"
msgstr "Afegir nou proveidor"
msgstr "Afegeix un proveïdor nou"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:42
msgid "-"
@ -37,7 +116,7 @@ msgstr "-"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:43
msgid "Removes selected provider"
msgstr "Esborrar proveidor seleccionat"
msgstr "Esborra el proveïdor seleccionat"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:47
msgid "Advanced..."
@ -45,22 +124,18 @@ msgstr "Avançat..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:48
msgid "Opens dialog with provider settings"
msgstr "Obre formulari amb ajustos de proveidor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "%s Credencials d'usuari"
msgstr "Obre formulari de configuració de proveidor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr "Selecciona la font on les credencials utilitzades es desen"
msgstr ""
"Selecciona la font on es desen les credencials de connexió utilitzades"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Utilitzar credencials del Credential &Manager: "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Utilitzar del Credential &Manager: "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -68,36 +143,16 @@ msgstr ""
"Seleccioneu aquesta opció si voleu utilitzar les credencials desades a "
"l'Administrador de Credencials de Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
"Les vostres credencials actuals a l'Administrador de Credencials de Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Esborrar Credencials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Utilitzeu de la configuració del vostre &perfil:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Cliqueu per a esborrar les credencials de l'Administrador de Credencials.\n"
"Nota: Se us demanaran noves credencials en connectar."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Desar Credencials..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Cliqueu aquí per a desar o modificar les vostres credencials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Utilitzeu les credencials de la configuració del vostre &perfil:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -105,41 +160,69 @@ msgstr ""
"Escolliu aquesta opció si voleu desar les credencials com a part del perfil "
"de configuració"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Configuració de credencials del perfil"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Esborra les credencials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Cliqueu per a esborrar les credencials de l'Administrador de Credencials.\n"
"Nota: Se us demanaran noves credencials en connectar."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Desa les credencials..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Cliqueu aquí per a desar o modificar les vostres credencials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "ID d'usuari i contrasenya"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Sisplau introduiu el vostre ID d'usuari i contrasenya"
msgstr "Introduïu el vostre ID d'usuari i contrasenya"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "ID d'usuari:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Introduiu el vostre identificador aquí (identificador@domini.org, "
"Introduïu el vostre identificador aquí (identificador@domini.org, "
"DOMINI\\identificador, etc.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Contrasenya:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Introduiu la vostra contrasenya aquí"
msgstr "Introduïu la vostra contrasenya aquí"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID d'usuari"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Introduïu el vostre ID."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "La vostra organització"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -147,54 +230,42 @@ msgstr ""
"Descriviu la vostra organització per personalitzar la interfície. Quan s'hi "
"introdueix, l'usuari troba missatges més comprensibles i senzills de seguir."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "El &nom de la vostra organització:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"El nom de la vostra organització tal i com apareixerà en les notificacions "
"de contacte del SAU"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Sigueu breus, sisplau)"
msgstr "(Sigueu breu)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Contacte d'ajuda i &informació:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Adreça web del centre de suport"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "Adreça de correu del centre de suport"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Telèfon del centre de suport"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Identificador únic del proveidor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -202,33 +273,33 @@ msgstr ""
"Assigneu a la vostra organització un ID únic per a comparit el mateix joc de"
" credencials entre diferents perfils de xarxa."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Namespace:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "&Identificador únic del proveidor:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"L'ID de la vostra organització per assignar les mateixes credencials des "
"d'altres perfils"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Bloqueig de configuració"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -236,7 +307,7 @@ msgstr ""
"Podeu bloquejar la configuració per prevenir modificacions accidentals dels "
"usuaris finals. Els usuaris només podran introduir credencials."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -244,43 +315,83 @@ msgstr ""
"&Bloqueja la configuració i preveniu qualsevol modificació via interfície "
"d'usuari."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Alerta: un cop bloquejada, no ho podeu revertir des d'aquesta finestra!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identitat:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Seleccioneu l'ID d'usuari que presenta el propi client a l'autentitcador:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "Identitat &real"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Utitlitza el meu usuari real"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Utilitza una identitat &buida"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Omet el meu identificador i utilitza només @elmeudomini.org"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Personalitza la &identitat:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Especifiqueu la identitat personalitzada"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Identitat a utilitzar:"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Configuració de la connexió EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Proveïdor d'Identitat EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Credencials"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Credencials EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Per instruccions i ajuda, sisplau contacteu amb %s a:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "el vostre proveidor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Obriu el navegador per defecte"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Obriu el programa de correu"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Marqueu el telèfon"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -289,35 +400,117 @@ msgstr ""
"%s ha preconfigurat parts d'aquesta configuració. Aquestes parts estan "
"bloquejades per evitar modificacions accidentals."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "El vostre proveidor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "L'intent de connexió anterior ha informat de credencials no vàlides."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr "L'intent de connexió anterior indica que les credencials han caducat."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"L'intent de connexió anterior indica que les credencials han estat "
"modificades."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "L'intent de connexió anterior ha fallat."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Sisplau assegureu-vos que les vostres credencials són correctes, o proveu-ho"
" més tard."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"La versió de %s instal.lada en aquest ordinador registra les credencials en "
"pla."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Reconsidereu la necessitat d'introduir les vostres credencials."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Mètode EAP intern"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Seleccioneu i configureu el mètode EAP intern"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Ajustos"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Ha fallat el llistat de mètodes EAP (error %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Ha fallat el llistat de mètodes EAP (error %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Ha fallat la configuració dels mètodes EAP (error %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Ha fallat la configuració dels mètodes EAP (error %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "Repte GTC"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Indiqueu la vostra resposta."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Repte del servidor"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Introduïu aquí la vostra resposta"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "&Mètode d'autenticació EAP-GTC:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Seleccioneu el mode d'autenticació EAP-GTC de la llista"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Repte/Resposta"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Contrasenya"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "Repte %s"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "ID d'usuari i contrasenya MSCHAPv2"
@ -331,12 +524,8 @@ msgid "Server Trust"
msgstr "Servidors de confiança"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Descriu els servidors en que hi confieu per prevenir la intercepció de "
"credencials en cas d'atacs 'man-in-the-middle'."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -362,7 +551,7 @@ msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:52
msgid "Add CA from File..."
msgstr "Afegir CA des d'un fitxer..."
msgstr "Afegeix CA des d'un fitxer..."
#: lib/TLS_UI/res/wxTLS_UI.cpp:53
msgid "Adds a new certificate authority from the file to the list"
@ -370,17 +559,17 @@ msgstr "Afegeix una nova autoritat de certificació des de d'un arxiu"
#: lib/TLS_UI/res/wxTLS_UI.cpp:57
msgid "&Remove CA"
msgstr "&Eliminar CA"
msgstr "&Elimina CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Elimina les autoritats de certificació seleccionades"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "&Noms de servidors acceptats:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -388,27 +577,27 @@ msgstr ""
"Llista de noms de servidors acceptats, separats per ;, en blanc per no "
"comprovar noms. S'admeten caracters Unicode"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Per exemple: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Certificat d'usuari"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Sisplau escolliu el vostre &certificat per a l'autenticació."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Certificat de client per a l'autenticació"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Personalitzar la &identitat:"
msgstr "Personalitza la &identitat:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -417,191 +606,115 @@ msgstr ""
"certificat; o en blanc per fer servir la continguda en el mateix"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "S'ha trobat un caracter invàlid en el nom de servidor: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Conflicte de validació"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<buit>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Afegir Certificat"
msgstr "Afegeix un certificat"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Fitxers de certificat (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "Fitxers de certificat X.509 (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "Fitxers de certificat PKCS #7 (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Tots els fitxers (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Fitxer de certificat no vàlid o no suportat %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Error"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Identitat externa"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Seleccioneu l'ID d'usuari que presenta el propi client a l'autentitcador:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "Identitat &real"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Utitlitza el meu usuari real"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Utilitza una identitat externa &buida (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Omet el meu identificador i utilitza només @elmeudomini.org"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "Identitat externa &personalitzada:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Especifiqueu la identitat externa personalitzada"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Identitat externa a utilitzar"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
"Error escrivint les credencial a l'Administrador de credencials: %hs (error "
"%u)"
"Ha fallat la interfície d'usuari de la identitat EAP (error %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Ha fallat l'escriptura de les credencials."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Ha fallat la interfície d'usuari de la identitat EAP (error %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Autenticació interna"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "Ha fallat la interfície d'usuari interactiva EAP (error %u, %s, %s)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Ha fallat la interfície d'usuari interactiva EAP (error %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Autenticació externa"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Autenticació interna"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Escolliu de la llista el mètode d'autenticació externa"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Segur que voleu esborrar permanentment el proveidor %s de la configuració?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Alerta"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Ajustos del proveidor"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Altres mètodes EAP..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Ha fallat l'esborrat de credencials (error %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<error %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Mètode EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<error>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<blank ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Recordar"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Marqueu si voleu desar les credencials"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<La vostra organització>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Configuració de la connexió EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Mètodes EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Móduls per soportar mètodes EAP individuals"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,106 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Eric Hoch <eric.hoch@hhu.de>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: German (https://www.transifex.com/eduroam_devel/teams/11799/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Sind Sie sicher, dass Sie den Identitätsprovider %s aus der Konfiguration "
"löschen möchten?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Warnung"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "EAP Nutzerdaten"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Identitätsprovider Einstellungen"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s Benutzername"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Fehler beim Speichern der Nutzerdaten in der Anmeldeinformationsverwaltung: "
"%hs (Fehler %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Speichern der Nutzerdaten fehlgeschlagen."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Löschen der Nutzerdaten fehlgeschlagen (Fehler %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(keine)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(Fehler %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(Fehler)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(leere ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Speichern"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Klicken Sie hier um ihre Anmeldedaten zu speichern"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Ihre Organisation)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,20 +125,15 @@ msgstr "Fortgeschritten..."
msgid "Opens dialog with provider settings"
msgstr "Öffnet den Dialog mit den Einstellungen für den Anbieter"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "%s Benutzername"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr "Wählen sie die Datei in der ihre Anmeldedateien gespeichert sind"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Benutze die Daten aus dem Schlüsselbund"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Verwende aus dem Schlüsselbund"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -68,15 +141,31 @@ msgstr ""
"Wählen sie diese Option aus um die Daten aus der Windowsanmeldung zu "
"verwenden. "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr "Ihre aktuell für die Windowsanmeldung gespeicherten Daten"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Verwende aus der &Profilkonfiguration:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Wählren Sie diese Option, wenn sie ihre Anmeldedaten als Teil der "
"Profilkonfiguration speichern wollen"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Profilkonfiguration"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "Nutzerdaten &löschen"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
@ -85,61 +174,53 @@ msgstr ""
" zu löschen. Hinweis: Sie werden dann bei der nächsten Verbindung zur "
"Eingabe Ihrer Nutzerdaten aufgefordert."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "Nutzerdaten &festlegen..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Klicken Sie hier um Ihre Anmeldedaten einzugeben oder zu ändern"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Verwende die Anmeldedaten aus der &Profilkonfiguration"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Wählren Sie diese Option, wenn sie ihre Anmeldedaten als Teil der "
"Profilkonfiguration speichern wollen"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
msgid "Profile configuration credentials"
msgstr "Profilkonfiguration"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "Benutzername und Passwort"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Bitte geben Sie Ihren Benutzernamen und das Passwort ein."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Benutzername:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Geben Sie hier Ihren Benutzernamen ein (z.B nutzer@domain.org, "
"DOMAIN\\nutzer, ...)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Passwort:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Geben Sie hier Ihr Passwort ein"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Benutzername"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Bitte geben Sie Ihren Benutzernamen ein."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Ihre Organisation"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -148,54 +229,42 @@ msgstr ""
"gestalten. Die organisationsspezifische Anpassung macht es Ihren Nutzern "
"leichter, das Programm zu benutzen."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "&Name der Organisation:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Der Name Ihrer Organisation, so wie er dem Nutzer bei den Hilfe- und "
"Kontaktmöglichkeiten angezeigt wird"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(fassen Sie sich bitte kurz)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "&Hilfe und Kontaktmöglichkeiten:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Webseite für Hilfe und Kontakt"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "E-Mail Adresse für Hilfe und Kontakt"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Telefonnummer für Hilfe und Kontakt"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Eindeutige Kennzeichnung des Identitätsproviders"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -203,33 +272,33 @@ msgstr ""
"Geben Sie Ihrem Identitätsprovider eine eindeutige Bezeichnung damit er von "
"anderen Konfigurationsdateien unterschieden werden kann."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "Namens&raum:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "&Identifikation im Namensraum:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"Eindeutige Kennzeichnung Ihrer Organisation um Nutzerdaten "
"profilübergreifend nutzen zu können"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Konfiguration sperren"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -238,7 +307,7 @@ msgstr ""
"den Nutzer zu verhindern. Der Nutzer kann dann nur seinen Benutzernamen und "
"Passwort ändern."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -246,44 +315,87 @@ msgstr ""
"Konfiguration s&perren und weitere Änderungen durch die "
"Benutzerschnittstelle verhindern."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Warnung: sobald die Konfiguration gesperrt ist, können Sie sie hier nicht "
"mehr verändern!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identität"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Wählen Sie einen anonymen Nutzernamen für die unverschlüsselte Übertragung:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "Echten Nutzernamen &verwenden"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Im unverschlüsselten Teil der Anmeldung den echten Nutzernamen senden"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "L&eeren Identität verwenden"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
"Im unverschlüsselten Teil den Nutzernamen weglassen und nur den @domain Teil"
" senden"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Abwei&chender Identität:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr ""
"Im unverschlüsselten Teil einen selbst festgelegte Identität verwenden"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Zu verwendender Identität"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "EAP Verbindungseinstellungen"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "EAP Identitätsprovider"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Nutzerdaten"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "EAP Nutzerdaten"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Für Hilfe und weitere Anleitungen kontaktieren Sie bitte %s via:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "ihren Identitätsprovider"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Öffnen Sie im Webbrowser"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Öffnen Sie Ihr E-Mail Programm"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Wählen Sie die Telefonnummer"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -292,36 +404,119 @@ msgstr ""
"%s hat einige der Konfigurationsdaten voreingestellt. Diese Daten sind "
"gesperrt um unbeabsichtigte Änderungen zu vermeiden."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Ihr Identitätsprovider"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Der vorige Anmeldeversuch schlug fehl wegen falscher Nutzerdaten."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Der vorige Anmeldeversuch schlug fehl weil die Nutzerdaten abgelaufen sind."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Der vorige Anmeldeversuch meldete dass Ihre Nutzerdaten geändert werden "
"müssen."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Der vorige Anmeldeversuch schlug fehl."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Bitte stellen Sie sicher dass ihre Nutzerdaten korrekt sind, oder versuchen "
"Sie es später noch einmal."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"Die Version von %s die auf diesem Rechner installiert ist speichert "
"Passwörter in Klartext an einer leicht lesbaren Stelle."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
"Bitte überlegen Sie sich ganz genau, ob Sie hier Ihre Passwörter eingeben."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Innere EAP Methode"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Innere EAP Methode auswählen und konfigurieren"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "Einstellun&gen"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Auflisten der EAP Methoden fehlgeschlagen (Fehler %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Auflisten der EAP Methoden fehlgeschlagen (Fehler %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Konfigurieren der EAP Methode fehlgeschlagen (Fehler %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Konfigurieren der EAP Methode fehlgeschlagen (Fehler %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Passwort"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "Benutzername und Passwort für MSCHAPv2"
@ -335,12 +530,10 @@ msgid "Server Trust"
msgstr "Vertrauenseinstellungen: Server"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Definieren Sie welche Server vertrauenswürdig sind um das Abgreifen von "
"Nutzerdaten durch Man-in-the-Middle Angriffe zu verhindern."
"Definieren Sie welche Server vertrauenswürdig sind um der Man-in-the-Middle "
"Angriffe zu verhindern."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -377,15 +570,15 @@ msgstr "Fügt eine Zertifizierungsstelle aus einer Datei zur Liste hinzu"
msgid "&Remove CA"
msgstr "&CA entfernen"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Entfernt die ausgewählte Zertifizierungsstelle aus der Liste"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "&Akzeptable Servernamen:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -393,27 +586,27 @@ msgstr ""
"Eine durch Semikola getrennte Liste der akzeptablen Servernamen; wenn leer, "
"wird die Namensüberprüfung übersrungen; Unicode Buchstaben sind erlaubt"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Beispiel: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Benutzerzertifikat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Bitte wählen Sie ihr Benutzer&zertifikat für die Identifizierung aus"
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Nutzerzertifikat für Anmeldung"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Ab&weichender Nutzername:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -423,196 +616,116 @@ msgstr ""
"verwenden"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Ungültiger Buchstabe im Servernamen gefunden: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Fehler bei der Validierung"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<leer>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Zertifikat hinzufügen"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Zertifikatsdateien (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 Zertifikatsdateien (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 Zertifikatsdateien (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Alle Dateien (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Ungültige oder nicht unterstützte Zertifikatsdatei %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Fehler"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Äußere (anonyme) Identität"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Wählen Sie einen anonymen Nutzernamen für die unverschlüsselte Übertragung:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "Echten Nutzernamen &verwenden"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Im unverschlüsselten Teil der Anmeldung den echten Nutzernamen senden"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Leeren N&utzernamen verwenden (gemäß RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
"Im unverschlüsselten Teil den Nutzernamen weglassen und nur den @domain Teil"
" senden"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "Ei&genen Nutzernamen verwenden:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr ""
"Im unverschlüsselten Teil einen selbst festgelegten Nutzernamen verwenden"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Zu verwendender Nutzername"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
"Fehler beim Speichern der Nutzerdaten in der Anmeldeinformationsverwaltung: "
"%hs (Fehler %u)"
"Anzeigen des Dialogs für EAP Identität fehlgeschlagen (Fehler %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Speichern der Nutzerdaten fehlgeschlagen."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Anzeigen des Dialogs für EAP Identität fehlgeschlagen (Fehler %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Verschlüsselte Anmeldungsphase"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Unverschlüsselte Anmeldungsphase"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Verschlüsselte Anmeldungsphase"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr ""
"Wählen Sie die Anmeldemethode im verschlüsselten Teil der Verbindung aus"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Sind Sie sicher, dass Sie den Identitätsprovider %s aus der Konfiguration "
"löschen möchten?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Warnung"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Identitätsprovider Einstellungen"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Andere EAP Methoden..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Löschen der Nutzerdaten fehlgeschlagen (Fehler %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<Fehler %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "EAP-TTLS Methode"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<Fehler>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<leere ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Speichern"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Klicken Sie hier um ihre Anmeldedaten zu speichern"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Ihre Organisation>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "EAP Verbindungseinstellungen"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "EAP Methoden"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Module zur Unterstützung einzelner EAP Methoden"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

View File

@ -1,28 +1,108 @@
#
# Translators:
# Vicky Kons <vickyk@admin.grnet.gr>, 2017
# Halil Adem <hadem@noc.grnet.gr>, 2020
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Zenon Mousmoulas <zenon@mousmoulas.gr>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Greek (https://www.transifex.com/eduroam_devel/teams/11799/el/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: el\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Είστε βέβαιοι ότι θέλετε να καταργήσετε οριστικά τον πάροχο %s από τη "
"διαμόρφωση;"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Προειδοποίηση"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Διαπιστευτήρια EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Ρυθμίσεις παρόχων"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s Διαπιστευτήρια Χρήστη"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Σφάλμα κατά την εγγραφή των διαπιστευτηρίων στο Credential Manager: %hs "
"(σφάλμα %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Η εγγραφή των διαπιστευτηρίων απέτυχε."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Η διαγραφή των διαπιστευτηρίων απέτυχε (σφάλμα %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(κανένα)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(σφάλμα %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(σφάλμα)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(κενό ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Υπενθύμιση"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Ελέγξτε αν θέλετε να αποθηκεύσετε τα διαπιστευτήρια"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Ο Φορέας σας)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,22 +127,17 @@ msgstr "Προχωρημένο..."
msgid "Opens dialog with provider settings"
msgstr "Ανοίγει ένα παράθυρο διαλόγου με τις ρυθμίσεις του παρόχου"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "%s Διαπιστευτήρια Χρήστη"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Επιλέξτε την πηγή όπου είναι αποθηκευμένα τα διαπιστευτήριά σας που "
"χρησιμοποιείται για τη σύνδεση."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Χρησιμοποιήστε τα διαπιστευτήρια από τον Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -70,37 +145,16 @@ msgstr ""
"Επιλέξτε αυτήν την επιλογή αν θέλετε να χρησιμοποιήσετε τα διαπιστευτήρια "
"που αποθηκεύονται στο Windows Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
"Τα παρόντα διαπιστευτήρια είναι αποθηκευμένα στο Windows Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Καθαρίσμος διαπιστευτηρίων"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Επιλέξτε να καθαρίσετε τα διαπιστευτήρια σας από τον Credential Manager\n"
"Σημείωση: Θα σας ζητηθεί να εισαγάγετε τις πιστοποιήσεις σας κατά τη σύνδεση."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Ρυθμίση των διαπιστευτηρίων..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr ""
"Κάντε κλικ εδώ για να ρυθμίσετε ή να τροποποιήσετε τα διαπιστευτήριά σας"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Χρησιμοποιήστε τα διαπιστευτήρια από το &προφίλ ρύθμισης παραμέτρων:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -108,39 +162,68 @@ msgstr ""
"Επιλέξτε αυτήν την επιλογή αν θέλετε να αποθηκεύσετε τα διαπιστευτήρια ως "
"μέρος της διαμόρφωσης προφίλ"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Προφίλ ρύθμισης διαπιστευτηρίων"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Καθαρίσμος διαπιστευτηρίων"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Επιλέξτε να καθαρίσετε τα διαπιστευτήρια σας από τον Credential Manager\n"
"Σημείωση: Θα σας ζητηθεί να εισαγάγετε τις πιστοποιήσεις σας κατά τη σύνδεση."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Ρυθμίση των διαπιστευτηρίων..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr ""
"Κάντε κλικ εδώ για να ρυθμίσετε ή να τροποποιήσετε τα διαπιστευτήριά σας"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "ID χρήστη και κωδικός πρόσβασης"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Παρακαλείσθε να δώσετε το όνομα χρήστη και τον κωδικό πρόσβασής σας."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "ID Χρήστη:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr "Εισάγετε εδώ το όνομα χρήστη (user@domain.org, DOMAIN\\User,etc.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Κωδικός Πρόσβασης:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Εισάγετε τον κωδικό πρόσβασης σας εδώ"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID Χρήστη"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Παρακαλείσθε να δώσετε το όνομα χρήστη"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Ο Φορέας σας"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -149,54 +232,42 @@ msgstr ""
"παρουσιάζεται ο φορέας, οι τελικοί χρήστες κατανοούν πιο εύκολα τα μηνύματα "
"των προγραμμάτων και τις ενέργειές τους."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Το όνομα &του Φορέα σας:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Το όνομα του φορέα σας, όπως αυτό θα εμφανίζεται στις ειδοποιήσεις των "
"επαφών του helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Παρακαλώ, περιοριστείτε)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Πληροφορίες& επικοινωνίας Helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "H διεύθυνση της ιστοσελίδας του Helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "Tο e-mail του Helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Ο αριθμός τηλεφώνου του Helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Πάροχος Μοναδικoύ Αναγνωριστικού"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -204,33 +275,33 @@ msgstr ""
"Αναθέστε στον φορέα σας ένα μοναδικό αναγνωριστικό για να επιτρέπεται να "
"μοιράζεται τα ίδια διαπιστευτήρια σε διαφορετικά προφίλ του δικτύου."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Περιοχή:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Πάροχος μοναδικού &αναγνωριστικού:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"Το αναγνωριστικό του φορέα σας για να παρέχετε ίδια διαπιστευτήρια από άλλα "
"προφίλ"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Διαμόρφωση κλειδώματος"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -239,7 +310,7 @@ msgstr ""
"αλλαγές από τους τελικούς χρήστες. Στους χρήστες θα επιτρέπεται μόνο να "
"εισαγουν τα διαπιστευτήρια."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -247,46 +318,88 @@ msgstr ""
"&Αποκλεισμός αυτής της διαμόρφωσης και αποτρέψτε οποιαδήποτε περαιτέρω "
"τροποποίηση μέσω της διεπαφής χρήστη."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Προσοχή: Μόλις κλειδωθεί, δεν μπορείτε να το επαναφέρετε χρησιμοποιώντας "
"αυτό το διάλογο!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Ταυτότητα"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Επιλέξτε το αιτούμενο αναγνωριστικό χρήστη να εισάγει τον εαυτο του ως "
"πιστοποιητικό:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Επαληθευμένη Ταυτότητα"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Χρησιμοποιήσε το αληθινό όνομα χρήστη μου"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Χρησιμοποιήστε &κενή ταυτότητα"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
"Παραλείψτε το όνομα χρήστη μου και χρησιμοποιήστε μόνο το @mydomain.org"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "&Προσαρμοσμένη ταυτότητα:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Καθορίστε τη διαμόρφωση της ταυτότητας"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Χρήση της προσαρμοσμένης ταυτότητας"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Διαμόρφωση σύνδεσης EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Πάροχος υπηρεσιών EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Διαπιστευτήρια"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Διαπιστευτήρια EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
"Για περισσότερη βοήθεια και οδηγίες, παρακαλούμε επικοινωνήστε μαζί μας %s "
"στο:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "ο πάροχος σας"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Ανοίξτε ένα προεπιλεγμένο φυλλομετρητή"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Ανοίξτε το πρόγραμμα του e-mail σας"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Πληκτρολογήστε το αριθμό τηλεφώνου"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -295,38 +408,120 @@ msgstr ""
"%s έχει προ-ρυθμισεί τμήματα αυτής της διαμόρφωσης. Τα μέρη αυτά είναι "
"κλειδωμένα για να εμποδίστει η τυχαία τροποποίηση."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Ο πάροχός σας"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
"Η προηγούμενη προσπάθεια για να συνδεθείτε ανέφερε μη έγκυρα διαπιστευτήρια."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Η προηγούμενη προσπάθεια για να συνδεθείτε ανέφερε ότι τα διαπιστευτήριά σας"
" έχουν λήξει."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Η προηγούμενη προσπάθεια να συνδεθείτε ανέφερε ότι τα διαπιστευτήρια σας "
"έχουν αλλάξει."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Η προηγούμενη προσπάθεια σύνδεσης απέτυχε."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Παρακαλώ, βεβαιωθείτε ότι τα διαπιστευτήρια σας είναι σωστά ή δοκιμάστε ξανά"
" αργότερα."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"Η %s εγκατεστημένη έκδοση σε αυτόν τον υπολογιστή συνδέει τα διαπιστευτήρια"
" με ορατό και ευανάγνωστο τρόπο."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Παρακαλούμε, θεωρείτε απαραίτητο να εισαγάγετε τα διαπιστευτήριά σας."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Εσωτερικοί μέθοδοι EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Επιλέξτε και ρυθμίστε την εσωτερική μέθοδο EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Ρυθμίσεις"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Αποτυχία απαρίθμησης των μεθόδων EAP (σφάλμα %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Αποτυχία απαρίθμησης των μεθόδων EAP (σφάλμα %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Απέτυχε η διαμόρφωση της μεθόδου EAP (σφάλμα %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Απέτυχε η διαμόρφωση της μεθόδου EAP (σφάλμα %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "GTC Challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Παρακαλώ δώστε την απάντησή σας."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Server challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Εισάγετε την απάντησή σας εδώ"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "EAP-GTC πιστοποίηση &μέθοδος:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Επιλέξτε την EAP-GTC ταυτοποίηση από τη λίστα"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Διαταραχή/Ανταπόκριση"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Κωδικός πρόσβασης"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "%s Challenge"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "MSCHAPv2 ID χρήστη και κωδικός πρόσβασης"
@ -340,12 +535,10 @@ msgid "Server Trust"
msgstr "Εμπιστευτικό Διακομιστή"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Περιγράψτε τους διακομιστές που εμπιστεύεστε για την πρόληψη υποκλοπἠς των "
"διαπιστευτηρίων σε περίπτωση επιθέσεων man-in-the-middle."
"Περιγράψτε τους διακομιστές που εμπιστεύεστε για την πρόληψη επιθέσεων man-"
"in-the-middle."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -382,15 +575,15 @@ msgstr "Προσθέτει μια νέα αρχή πιστοποιητικού
msgid "&Remove CA"
msgstr "&Αφαιρέστε CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Αφαιρεί επιλεγμένα πιστοποιητικά από τη λίστα"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Αποδεκτά &ονόματα server:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -399,30 +592,30 @@ msgstr ""
"εξυπηρετητών· αφήστε κενό για να παρακάμψετε την επιλογή ονόματος· "
"επιτρέπονται οι χαρακτήρες unicode"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Παράδειγμα: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Πιστοποιητικό χρήστη"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
"Επιλέξτε το &πιστοποιητικό σας που θα χρησιμοποιηθεί για τον έλεγχο "
"ταυτότητας."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr ""
"Το πιστοποιητικό πελάτη που θα χρησιμοποιηθεί για τον έλεγχο της ταυτότητας"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Προσαρμοσμένη &ταυτότητα:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -431,194 +624,115 @@ msgstr ""
"κενό για να χρησιμοποιήσετε όποια ταυτότητα παρέχεται από πιστοποιητικό"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Βρέθηκε μη έγκυρος χαρακτήρας στο hostname: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Πρόβλημα επικύρωσης"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<κενό>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Προσθήκη Πιστοποιητικού"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Αρχεία Πιστοποιητικών (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 Αρχεία Πιστοποιητικών (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 Αρχεία Πιστοποιητικών (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Όλα τα αρχεία (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Άκυρο ή μη υποστηριζόμενο αρχείο πιστοποιητικού %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Σφάλμα"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Εξωτερική ταυτότητα"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Επιλέξτε το αιτούμενο αναγνωριστικό χρήστη να εισάγει τον εαυτο του ως "
"πιστοποιητικό:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "&Επαληθευμένη Ταυτότητα"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Χρησιμοποιήσε το αληθινό όνομα χρήστη μου"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Χρησιμοποιήστε &κενή εξωτερική ταυτότητα (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
"Παραλείψτε το όνομα χρήστη μου και χρησιμοποιήστε μόνο το @mydomain.org"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "&Διαμόρφωση της εξωτερικής ταυτότητας:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Καθορίστε τη διαμόρφωση της εξωτερικής ταυτότητας"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Προσαρμόστε την εξωτερική ταυτότητα για να την χρησιμοποιήσετε"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr "Απέτυχη η επίκληση της EAP UI ταυτότητας (σφάλμα %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Απέτυχη η επίκληση της EAP UI ταυτότητας (σφάλμα %u)."
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
"Σφάλμα κατά την εγγραφή των διαπιστευτηρίων στο Credential Manager: %hs "
"(σφάλμα %u)"
"Η επίκληση της διαδραστικότητας του EAP UI απέτυχε (error %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Η εγγραφή των διαπιστευτηρίων απέτυχε."
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Η επίκληση της διαδραστικότητας του EAP UI απέτυχε (error %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Ταυτοποίηση εσωτερικής ταυτότητας"
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Ταυτοποίηση εξωτερικής ταυτότητας"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Ταυτοποίηση εσωτερικής ταυτότητας"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Επιλέξτε την μέθοδο ταυτοποίησης εσωτερικής ταυτότητας από τη λίστα"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Είστε βέβαιοι ότι θέλετε να καταργήσετε οριστικά τον πάροχο %s από τη "
"διαμόρφωση;"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Προειδοποίηση"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Ρυθμίσεις παρόχων"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Άλλοι μέθοδοι EAP..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Η διαγραφή των διαπιστευτηρίων απέτυχε (σφάλμα %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<σφάλμα %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Μέθοδος EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<σφάλμα>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<κενό ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Υπενθύμιση"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Ελέγξτε αν θέλετε να αποθηκεύσετε τα διαπιστευτήρια"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Ο Φορέας σας>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Διαμόρφωση σύνδεσης EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Μέθοδοι EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Ενότητες για την ενίσχυση μεμονωμένων μεθόδων EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

View File

@ -1,28 +1,106 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
# Alberto Martínez Setién, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Alberto Martínez <alberto_martinez@deusto.es>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Alberto Martínez Setién, 2020\n"
"Language-Team: Spanish (https://www.transifex.com/eduroam_devel/teams/11799/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"¿está seguro de que quiere borrar permanentemente la configuración del "
"proveedor %s?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Advertencia"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Credenciales EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Configuración del proveedor"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "Credenciales %s de usuario"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Error escribiendo credenciales en el Gestor de Credenciales: %hs (error %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Fallo escribiendo credenciales."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Fallo al borrar credenciales (error %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(ninguno)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(error %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(error)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(ID en blanco)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Recordar"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Marca si quieres guardar las credenciales"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Su organización)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,21 +125,16 @@ msgstr "Avanzado..."
msgid "Opens dialog with provider settings"
msgstr "Abrir diálogo configuración de proveedores"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "Credenciales %s de usuario"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Selecciona el repositorio en el que se guardan las credenciales de conexión."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Usa credenciales del &Administrador de Credenciales:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Usar desde el &Administrador de Credenciales:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -69,37 +142,17 @@ msgstr ""
"Selecciona esta opción si quieres usar credenciales guardadas en el "
"Administrador de Credenciales de Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
"Sus credenciales actuales guardadas en el Administrador de Credenciales de "
"Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Limpiar Credenciales"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Usar desde la configuración del &perfil:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Clicar para limpiar sus credenciales del Administrador de Credenciales.\n"
"Nota: Se le pedirá introducir credenciales al conectarse."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Establecer Credenciales..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Haga clic aquí para establecer o modificar sus credenciales"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Usa las credenciales de la configuración del &perfil:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -107,41 +160,69 @@ msgstr ""
"Selecciona esta opción si quieres guardar credenciales como parte de la "
"configuración del perfil"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Credenciales de la configuración del perfil"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Limpiar Credenciales"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Clicar para limpiar sus credenciales del Administrador de Credenciales.\n"
"Nota: Se le pedirá introducir credenciales al conectarse."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Establecer Credenciales..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Haga clic aquí para establecer o modificar sus credenciales"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "Identificador de usuario y contraseña"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Por favor proporciones su ID de usuario y contraseña."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "ID de usuario:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Introduzca su nombre de usuario aquí (usuario@dominio.org, DOMAIN\\User, "
"etc.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Contraseña:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Introduzca su contraseña aquí"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID de usuario"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Introduzca su ID de usuario, por favor."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Su organización"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -150,54 +231,42 @@ msgstr ""
"organización se muestre, los usuarios encontrarán los mensajes más fáciles "
"de entender y actuar."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "&Nombre de su organización:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"El nombre de su organización tal cual aparecerá en las notificaciones de "
"contacto para soporte"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Se recomienda algo corto)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "&Información de contacto de soporte:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "La dirección web para ofrecer soporte"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "La dirección de correo para soporte"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "El teléfono para soporte"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Identificador único del proveedor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -205,33 +274,33 @@ msgstr ""
"Asignar a su organización un identificador único para permitir que el "
"conjunto de credenciales se comparta entre distintos perfiles de red."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Espacio de nombres:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "&Identificador único de proveedor:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"El identificador de su organización para asignar las mismas credenciales de "
"otros perfiles"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Bloqueo de configuración"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -240,7 +309,7 @@ msgstr ""
"accidentales por los usuarios. Estos sólo tendrán permitido introducir "
"credenciales."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -248,44 +317,85 @@ msgstr ""
"&Bloquear esta configuración y prevenir así cualquier modificación posterior"
" en la interfaz de usuario."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Advertencia: ¡Una vez bloqueada, no podrá volver atrás usando este "
"diálogo!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identidad"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Seleccione el ID de usuario con el que el suplicante se presenta al "
"autenticador:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "Identidad &Real"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Usar mi nombre de usuario real"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Usar una identidad &vacía"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Omitir mi nombre de usuario y usar @midominio.org sólo"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Identidad &personalizada:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Especificar identidad personalizada"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Identidad personalizada a usar"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Configuración de conexiones EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Proveedor de identidad EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "Credenciales %s"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Credenciales EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Para ayuda o instrucciones adicionales, por favor contacte con %s en:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "su proveedor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Abrir el navegador web por defecto"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Abrir su cliente de correo electrónico"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Llamar al teléfono"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -294,38 +404,120 @@ msgstr ""
"%s tiene determinadas secciones de configuración pre-establecidas. Dichas "
"secciones están bloqueadas para evitar modificaciones accidentales."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Su proveedor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
"El intento anterior de conexión reportó que las credenciales no eran "
"correctas."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"El intento anterior de conexión reportó que las credenciales han expirado."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"El intento anterior de conexión reportó que sus credenciales están siendo "
"cambiadas."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Los intentos anteriores de conexión fallaron."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Por favor, asegúrese de que sus credenciales son correctas, o inténtelo de "
"nuevo más tarde."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"La versión %s instalada en este ordenador registra las credenciales de forma"
" abierta y fácil de leer."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Por favor, reconsidera la necesidad de introducir tus credenciales."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Método EAP interno"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Selecciona y configura un método EAP interno"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Configuración"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Fallo al enumerar los métodos EAP (error %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Fallo al enumerar los métodos EAP (error %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Fallo al configurar el método EAP (error %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Fallo al configurar el método EAP (error %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "Reto GTC"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Introduzca su respuesta, por favor."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Reto del servidor"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Introduzca su respuesta aquí"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "Autenticación EAP-GTC &mode:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Elija un modo de autenticación EAP-GTC de la lista"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Reto/Respuesta"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Contraseña"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "Reto %s"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "Identificador MSCHAPv2 de usuario y contraseña"
@ -339,12 +531,9 @@ msgid "Server Trust"
msgstr "Confianza en el servidor"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Describa los servidores confiables para prevenir que las credenciales puedan"
" ser interceptadas en caso de ataques man-in-the-middle"
"Describa los servidores confiables para prevenir ataques man-in-the-middle."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -382,15 +571,15 @@ msgstr ""
msgid "&Remove CA"
msgstr "&Borrar una CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Borrar las autoridades de certificación de la lista"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Nombres de servidor &aceptables:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -398,27 +587,27 @@ msgstr ""
"Una lista separada por punto y coma de nombres de servidor FQDN aceptables; "
"blanco para evitar comprobación de nombre; se admiten caracteres Unicode"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Ejemplo: foo.bar.com;servidor2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Certificado de usuario"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Por favor seleccione su &certificado a usar para la autenticación."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Certificado de cliente a utilizar para autenticación"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "&Identidad personalizada:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -427,192 +616,116 @@ msgstr ""
"blanco para usar la proporcionada en el certificado"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Carácter no válido en el nombre: %c"
msgid "No certificate selected"
msgstr "Ningún certificado seleccionado"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Conflicto de validación"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<vació>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Añadir Certificado"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Ficheros de certificado (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "Ficheros de certificado X.509 (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "Ficheros de certificados PKCS #7 (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Todos los ficheros (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Fichero de certificado %s es inválido o no está soportado"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Error"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Identidad Externa"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Seleccione el ID de usuario con el que el suplicante se presenta al "
"autenticador:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "Identidad &Real"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Usar mi nombre de usuario real"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Usar una identidad externa &vacía (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Omitir mi nombre de usuario y usar @midominio.org sólo"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "Identidad externa personalizada:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Especificar identidad externa personalizada"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Identidad externa personalizada a usar"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
"Error escribiendo credenciales en el Gestor de Credenciales: %hs (error %u)"
"Fallo al lanzar la interfaz de usuario de identidad EAP (error %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Fallo escribiendo credenciales."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Fallo al lanzar la interfaz de usuario de identidad EAP (error %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Autenticación interna"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
"Fallo al lanzar la interfaz de usuario interactiva EAP (error %u, %s, %s)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Fallo al lanzar la interfaz de usuario interactiva EAP (error %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Autenticación externa"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Autenticación interna"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Seleccione un método de autenticación interna de la lista"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"¿está seguro de que quiere borrar permanentemente la configuración del "
"proveedor %s?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Advertencia"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Configuración del proveedor"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Otros métodos EAP..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Fallo al borrar credenciales (error %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<error %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Método EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<error>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<ID en blanco>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Recordar"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Marca si quieres guardar las credenciales"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Su organización>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Configuración de conexiones EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Métodos EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Módulos para soportar métodos EAP individualmente"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

714
EAPMethods/locale/et_EE.po Normal file
View File

@ -0,0 +1,714 @@
#
# Translators:
# Indrek Rokk <indrek.rokk@eenet.ee>, 2018
# Simon Rozman <simon@rozman.si>, 2020
# Anne M <anne@eenet.ee>, 2021
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Anne M <anne@eenet.ee>, 2021\n"
"Language-Team: Estonian (https://www.transifex.com/eduroam_devel/teams/11799/et/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: et\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Kas oled kindel, et soovid %s teenusepakkuja seadistusest püsivalt "
"eemaldada?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Hoiatus"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "EAP kasutajakonto"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Teenusepakkuja seadistused"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s kasutajakonto andmed"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Viga kasutajakonto andmete kirjutamisel kasutajakonto halduris (Credential "
"Manager): %hs (viga %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Kasutajakonto andmete kirjutamine ebaõnnestus"
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Kasutajakonto andmete kustutamine ebaõnnestus (viga %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(ei midagi)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(viga %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(viga)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(tühi ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Jäta meelde"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Linnuta, kui soovid kasutajakonto andmeid salvestada"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Sinu asutus)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:38
msgid "Adds new provider"
msgstr "Lisab uue teenusepakkuja"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:42
msgid "-"
msgstr "-"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:43
msgid "Removes selected provider"
msgstr "Eemaldab valitud teenusepakkuja"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:47
msgid "Advanced..."
msgstr "Keerukam..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:48
msgid "Opens dialog with provider settings"
msgstr "Avab teenusepakkuja seadistuste dialoogi"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Vali koht, kuhu Su ühendumiseks kasutatud kasutajakonto andmed on "
"salvestatud."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Kasuta andmeid kasutajakontode hal&durist (Credential Manager):"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
"Vali see võimalus, kui soovid kasutada Windowsi kasutajakontode halduris "
"(Windows Credential Manager) salvestatud kontoandmeid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
"Sinu praegused, Windowsi kasutajakontode halduris (Windows Credential "
"Manager) salvestatud kontoandmed"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Kasuta andmeid &profiili seadistusest:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Vali see võimalus, kui soovid salvestada kasutajakonto andmed profiili "
"seadistustesse."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Profiili seadistuse kasutajaandmed"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Kustuta kasutajakonto andmed"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Klõpsa. et kustutada oma andmed kasutajakonto haldurist.\n"
"Märkus: Ühendumisel lastakse Sul sisestada kasutajakonto andmed."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Määra kasutajakonto andmed..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Klõpsa siin oma kasutajakonto andmete määramiseks või muutmiseks"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "Kasutaja ID ja parool"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Palun sisesta oma kasutaja ID ja parool"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Kasutaja ID:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr "Sisesta siin oma kasutajanimi (nimi@domeen.ee, DOMEEN\\kasutaja vmt)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Parool:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Sisesta siin oma parool"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Kasutaja ID"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Palun sisesta oma kasutaja ID (kasutajanimi)."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Sinu asutus"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
msgstr ""
"Kirjelda oma asutust, et seadistada kasutajaviibad. Kui asutus on "
"kirjeldatud, on lõppkasutajatel lihtsam programmi sõnumeid mõista ja neist "
"juhinduda."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Sinu asutuse &nimi:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Sinu asutuse nimi, mida näidatakse kasutajatoega kontakteerumise teadetes"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Palun kirjuta lühidalt)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Kasutajatoe k&ontaktteave:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Sinu kasutajatoe veebiaadress"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "Sinu kasutajatoe e-posti aadress"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Sinu kasutajatoe telefoninumber"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Teenusepakkuja unikaalne identifikaator"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
msgstr ""
"Määra oma asutusele unikaalne ID, et samu kontoandmeid saaks kasutada "
"erinevatel võrguprofiilidel."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Nimeruum:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Teenusepakkuja unikaalne &identifikaator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr "Sinu asutuse ID, et määrata samu kontoandmeid teistelt profiilidelt"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Seadistuslukk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
msgstr ""
"Seadistuslukk ei lase lõppkasutajatel kogemata muudatusi teha. Kasutajad "
"saavad ainult kasutajakontoandmeid sisestada."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
"&Lukusta see seadistus ja hoia ära selle muutmine kasutajaliidese kaudu"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Hoiatus: Lukustamise järel ei saa Sa seda dialoogi kasutades tehtut tagasi "
"pöörata!)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identiteet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr "Vali kasutajanimi, mida pistikprogramm autentijale näitab:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Tõene identiteet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Kasuta mu tõest kasutajanime"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Kasuta t&ühja identiteeti"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Jäta mu kasutajanimi ära ja kasuta ainult @minudomeeni"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Kohandatud &identiteet:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Määra kohandatud identiteet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Kohandatud identiteet kasutamiseks"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "EAP ühenduse seadistus"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "EAP identiteedipakkuja"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s kasutajakonto andmed"
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Abi ja juhendite saamiseks võta palun ühendust: %s "
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "sinu teenusepakkuja"
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Ava vaikimisi määratud veebilehitseja"
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Ava oma e-postiprogramm"
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Vali telefoninumber"
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
"prevent accidental modification."
msgstr ""
"%s omab selles seadistuses eelseatud osi, mis on juhuslike muudatuste eest "
"kaitsmiseks lukustatud."
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Sinu teenusepakkuja"
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Eelmine ühendumiskatse oli mittekehtivate kasutajakonto andmetega."
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr "Eelmise ühendumiskatse kohaselt olid su kasutajakonto andmed aegunud."
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr "Eelmise ühendumiskatse kohaselt on su kasutajakonto andmed muutmisel."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Eelmine ühendumiskatse ebaõnnestus."
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Palun veendu, et Su kasutajakonto andmed on korrektsed, või proovi hiljem "
"uuesti."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"%s versioon selles arvutis logib kasutajakonto andmeid nähtavalt ja lihtsalt"
" loetavalt."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Palun kaalu oma kasutajakonto andmete sisestamise vajalikkust."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Sisemine EAP meetod"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Vali ja seadista sisemine EAP meetod"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Seadistused"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "EAP meetodite loetlemine ebaõnnestus (viga %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "EAP meetodite loetlemine ebaõnnestus (viga %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "EAP meetodi seadistamine ebaõnnestus (viga %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "EAP meetodi seadistamine ebaõnnestus (viga %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "GTC pretensioon"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Palun sisesta oma vastus."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Serveri pretensioon"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Sisesta siin oma vastus."
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "EAP-GTC &autentimisrežiim:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Vali loetelust EAP-GTC autentimisrežiim"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Pretensioon/Vastus"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Parool"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "%s pretensioon"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "MSCHAPv2 kasutajanimi ja parool"
#: lib/PAP_UI/src/PAP_UI.cpp:33
msgid "PAP User ID and Password"
msgstr "PAP kasutajanimi ja parool"
#: lib/TLS_UI/res/wxTLS_UI.cpp:17
msgid "Server Trust"
msgstr "Serveri usaldamine"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr "Loetle serverid, mida usaldad vahendusrünnete tõrjumiseks."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
msgstr "Lubatud sertifitseerimiskeskused:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:40
msgid ""
"Server's certificate must be issued by one of certificate authorities listed"
" here"
msgstr ""
"Serverisertifikaat peab olema väljastatud siin loetletud "
"sertifitseerimiskeskuse poolt"
#: lib/TLS_UI/res/wxTLS_UI.cpp:47
msgid "Add CA from Store..."
msgstr "Lisa sertifikaadilaost CA..."
#: lib/TLS_UI/res/wxTLS_UI.cpp:48
msgid ""
"Adds a new certificate authority from the certificate store to the list"
msgstr "Lisab sertikaadilaost nimekirja uue sertifitseerimiskeskuse"
#: lib/TLS_UI/res/wxTLS_UI.cpp:52
msgid "Add CA from File..."
msgstr "Lisa failist CA..."
#: lib/TLS_UI/res/wxTLS_UI.cpp:53
msgid "Adds a new certificate authority from the file to the list"
msgstr "Lisab failist nimekirja uue sertifitseerimiskeskuse"
#: lib/TLS_UI/res/wxTLS_UI.cpp:57
msgid "&Remove CA"
msgstr "Eemalda &CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Eemaldab valitud sertifitseerimiskeskused nimekirjast"
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Lubatud serveri&nimed:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
msgstr ""
"Semikoolonitega eraldatult nimekiri lubatud serverite FQDN nimedest; "
"nimekontrolli vahelejätmiseks tühik; lubatud on Unicode märgistik"
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Näide: yks.näide.ee;2.teine.ee)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Kasutaja sertifikaat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Palun vali autentimiseks oma serti&fikaat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Autentimisel kasutatav kliendisertifikaat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Kohandatud &identiteet:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
msgstr ""
"Sinu identiteet (kasutajanimi@domeen), millega kirjutatakse üle "
"sertifikaadis olev; kui jätad tühjaks, kasutatakse sertifikaadis olevat"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "No certificate selected"
msgstr "Sertifikaati ei ole valitud"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Valideerimiskonflikt"
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Lisa sertifikaat"
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Sertifikaadi failid (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 sertifikaadi failid (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 sertifikaadi failid (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Kõik failid (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Vigane või mittetoetatud sertifikaadifail %s"
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Viga"
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr "EAP identiteedi UI aktiveerimine ebaõnnestus (viga %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "EAP identiteedi UI aktiveerimine ebaõnnestus (viga %u)."
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "EAP interaktiivse UI aktiveerimine ebaõnnestus (viga %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "EAP interaktiivse UI aktiveerimine ebaõnnestus (viga %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Väline autentimine"
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Sisemine autentimine"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Vali nimekirjast sisemise autentimise meetod"
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Muud EAP meetodid..."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "EAP-TTLS meetod"
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "EAP meetodid"
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moodulid individuaalsete EAP meetodite toeks"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,107 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
# Dubravko Penezic <dpenezic@gmail.com>, 2022
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Dubravko Penezic <dpenezic@gmail.com>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Dubravko Penezic <dpenezic@gmail.com>, 2022\n"
"Language-Team: Croatian (Croatia) (https://www.transifex.com/eduroam_devel/teams/11799/hr_HR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: hr_HR\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Da li ste sigurni da želite za stalno opbrisati davatelja usluge %s iz "
"konfiguracije ? "
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Upozorenje"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "EAP korisničke oznake"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Postavke davatelja usluge"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s korisničke vjerodajnice"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Greška pri zapisivanju podataka o identitetu u Upravitelju vjerodajnica: %hs"
" (error %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Zapisivanje podataka o identitetu nije uspijelo."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Brisanje podataka o identitetu nije uspijelo (error %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(bez)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(greška %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(greška)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(prazni ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Podsjeti"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Provjerite želite li spremiti vjerodajnice"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Vaša organizacija)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,92 +126,100 @@ msgstr "Napredno..."
msgid "Opens dialog with provider settings"
msgstr "Otvaranje dialoga s postavkama davatelja usluge"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Odaberite izvor na kojem su pohranjene vaše vjerodajnice za povezivanje."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Upotrijebite iz Upravitelja vjerodajni&ca:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
"Odaberite ovu opciju ako želite koristiti vjerodajnice pohranjene u Windows "
"upravitelju vjerodajnica"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
msgstr "Vaše vjerodajnice pohranjene u Windows upravitelju vjerodajnica"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Obriši korisničke podatke"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Upotrijebite iz konfiguracije &profila:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Odaberi kako bi se obrisali korisnički podaci u Credential Manager.\n"
"Opaska: Biti će te pitani za korisničke podatke po spajanju."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Postavi korisničke podatke..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Odaberi ako je potrebno postaviti korisničke podatke"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Odaberite ovu opciju ako želite pohraniti vjerodajnice kao dio konfiguracije"
" profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr ""
msgstr "Potvrde o konfiguraciji profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Izbriši vjerodajnice"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Odaberi kako bi se obrisali korisnički podaci u Upravitelju vjerodajnica.\n"
"Opaska: Biti će te pitani za korisničke podatke po spajanju."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Postavi korisničke podatke..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Odaberi ako je potrebno postaviti korisničke podatke"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
msgstr "Korisnički ID i lozinka"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Molimo postavite svoju korisničku oznaku i lozinku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Korisnička oznaka:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr "Unesi svoju korisnicku oznaku (pero@pero.hr)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Lozinka:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Unesi svoju lozinku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Korisnička oznaka"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Unesite korisničko ime i zaporku."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Vaša ustanova"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -141,52 +228,40 @@ msgstr ""
"ustanova prestavljena, krajnji korisnik će lakše obaviti postavljanje "
"postavki."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Ime vaše &ustanove:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr "Ime vaše ustanove će se pojaviti na obavijesti helpdesk-u"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Ukratko, molim)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Kontakt &podaci helpdesk-a:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Web adresa vašeg helpdesk-a"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "E-mail adresa vašeg helpdesk-a"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Telefonski broj vašeg helpdesk-a"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Jedinstveni identifikator davatelja usluge"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -194,31 +269,31 @@ msgstr ""
"Prijavite ID vaše ustanove kako bi se mogao koristiti za različite mrežne "
"profile"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Namespace:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Davatelj jedinstvene &identifikacije:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr "ID vaše ustanove se pojavljuje i kod drugih korisničkih podataka"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Zaključaj posatvke"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -226,7 +301,7 @@ msgstr ""
"Vaše postavke su zaključane kao bi se zaštile od nehotične promjene krajnjeg"
" korisnika. Korisnik će moći unjeti samo svoje korisničke podatke."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -234,42 +309,84 @@ msgstr ""
"&Zaključaj postavke kako bi onemomogučili kasniju promjenu kroz korisničko "
"sučelje"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr "(Upozorenje: Jednom zaključano, nemože se otključati ovim dijalogom!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Odaberi korisnički ID s kojim će se supplicant predstavljati autentikatoru."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Stvarna korisnička oznaka"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Koristi moju stvarnu korisničku oznaku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Koristi &prazan identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
"Koristi samo @mojadomena.hr (ovo nije podržano za korisnike iz sustava "
"AAI@EduHr)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Samostalno odabrani &identitet:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Specijalni identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Samostalno odabrani identitet koji će se koristiti"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Parametri EAP konekcije"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Davatelj EAP identiteta"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s korisnički podatci"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "EAP korisničke oznake"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Za dodatnu pomoć i postavke kontaktiraj %s :"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "vaš davatelj usluge"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Otvori standardni web preglednik"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Otvorite vaš e-mail program"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Nazovi telefonski broj"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -278,51 +395,131 @@ msgstr ""
"%s ima predefinirane postavke. Te postavke su zaključane kako bi spriječile "
"slučajnu promjenu."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Vaš davatelj usluge"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
"Prethodni pokušaj spajanja je prijavio da su korišteni netočni korisnički "
"podaci."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Prethodni pokušaj spajanja je prijavio da su korisnički podaci istekli."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Prethodni pokušaj spajanja je priojavio da su promjenjeni korisnički podaci."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Prethodni pokušaj spajanja nije uspio."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr "Molimo provjeritet da je certifikat dobar ili pokušajte kasnije."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"%s verzija instalirana na ovom računalu prijavljuje vjerodajnice na vidljiv "
"i jednostavan način za čitanje."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Molimo, ponovno razmotrite potrebu za unos vjerodajnica."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Unutarnja EAP metoda"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Odaberite i konfigurirajte unutarnju EAP metodu"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Postavke"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Nije uspjelo nabrajanje metoda EAP (pogreška% u,% s,% s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Nije uspjelo nabrajanje metoda EAP (pogreška% u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Nije uspjela konfiguracija EAP metode (pogreška% u,% s,% s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Nije uspjela konfiguracija EAP metode (pogreška% u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "GTC izazov"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Navedite odgovor."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Izazov poslužitelja"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Unesite svoj odgovor ovdje"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "EAP-GTC autentifikacija i &način rada:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Na popisu odaberite način provjere autentikacije EAP-GTC"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Izazov / Odgovor"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Lozinka"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "$s Izazov"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
msgstr "Korisnički ID i lozinka MSCHAPv2"
#: lib/PAP_UI/src/PAP_UI.cpp:33
msgid "PAP User ID and Password"
msgstr ""
msgstr "PAP User ID i Lozinka"
#: lib/TLS_UI/res/wxTLS_UI.cpp:17
msgid "Server Trust"
msgstr "Server Trust"
msgstr "Povjerenje poslužitelja"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Opisivanje autentikacijskog poslužitelja kako bi se izbjegao MitM napad."
@ -334,7 +531,7 @@ msgstr "Prihvatljivi certifikat autoriteti: "
msgid ""
"Server's certificate must be issued by one of certificate authorities listed"
" here"
msgstr ""
msgstr "Certifikat poslužitelja mora izdati ovlašteni izdavatelj certifikata"
#: lib/TLS_UI/res/wxTLS_UI.cpp:47
msgid "Add CA from Store..."
@ -357,15 +554,15 @@ msgstr "Dodavanje novog certifikat autoriteta na listu"
msgid "&Remove CA"
msgstr "&Micanje CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "MIcanje odabranih certifikat autoriteta s liste"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Prihvatljiv &naziv poslužitelja "
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -373,27 +570,27 @@ msgstr ""
"Točka-zarez odvaja listu FQDN naziva, prazno polje ne provjerava naziv; "
"moguće korištenje Unicode znakova"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Primjer: pero.hr;freeradius.primjer.hr)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
msgstr "Korisnički certifikat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
msgstr "Odaberite &certifikat koji ćete koristiti za autentikaciju."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Klijentski certifikat za autentikaciju"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Samostalno odabrani &identitet"
msgstr "Samostalno odabrani &identitet:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -402,196 +599,114 @@ msgstr ""
"certifikata ili ostavite prazno kako bi se koristili podaci iz certifikata"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Nevažeći znak u imenu poslužitelja %c"
msgid "No certificate selected"
msgstr "Nije odabran certifikat"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Problem s provjerom"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<prazno>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Dodaj certifikat"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 Certificate Files (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Sve datoteke (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Nevažeća ili nepodržana datoteka s certifikatom %s "
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Greška"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Vanjski korisnički identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Odaberi korisnički ID s kojim će se supplicant predstavljati autentikatoru."
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "&Stvarna korisnička oznaka"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Koristi moju stvarnu korisničku oznaku"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr ""
"Koristi &prazan vanjski identitet (RFC 4822) (ovo nije podržano za korisnike"
" iz sustava AAI@EduHr)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
"Koristi samo @mojadomena.hr (ovo nije podržano za korisnike iz sustava "
"AAI@EduHr)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "&Samostalno odabrani vanjski identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Specijalni vanjski identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Samostalno odabrani vanjski identitet koji će se koristiti"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Greška pri zapisivanju podataka o identitetu u Credential Manager: %hs "
"(error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr "Neuspjelo otvaranje korisničkog sučelja EAP identiteta."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Zapisivanje podataka o identitetu nije uspijelo."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Otvaranje korisničkog sučelja za identitet EAP nije uspjelo"
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Unutrašnja autentikacija"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "Neuspješno pokretanje interaktivnog korisničkog sučelja EAP."
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Pokretanje EAP interaktivnog korisničkog sučelja nije uspjelo."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Vanjska autentikacija"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Unutrašnja autentikacija"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Odaberi unutrašnji autentikacijski mehanizam s liste"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Da li ste sigurni da želite za stalno opbrisati davatelja usluge %s iz "
"konfiguracije ? "
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Upozorenje"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Postavke davatelja usluge"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Ostale EAP metode..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Brisanje podataka o identitetu nije uspijelo (error %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<greška %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "EAP-TTLS metoda"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<greška>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<prazni ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Podsjeti"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Vasa organizacija>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Parametri EAP konekcije"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "EAP metode"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moduli za podršku pojedinim EAP metodama"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

View File

@ -1,28 +1,102 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Hungarian (https://www.transifex.com/eduroam_devel/teams/11799/hu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: hu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr ""
@ -47,249 +121,359 @@ msgstr ""
msgid "Opens dialog with provider settings"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
"prevent accidental modification."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr ""
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
@ -303,9 +487,7 @@ msgid "Server Trust"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
@ -339,228 +521,155 @@ msgstr ""
msgid "&Remove CA"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr ""
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %ls provider from configuration?"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr ""

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,106 @@
#
# Translators:
# Tom Ivar Myren <tom.myren@sikt.no>, 2017
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Tom Ivar Myren <tom.myren@uninett.no>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Norwegian Bokmål (https://www.transifex.com/eduroam_devel/teams/11799/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: nb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Er du sikker på at du vil fjerne tilbyder %s permanent fra konfigurasjonen?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Advarsel"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "EAP brukeropplysninger"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Tilbyder innstillinger"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s Påloggingsinformasjon"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Feil under skriving av brukeropplysninger til Credential Manager: %hs (feil "
"%u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Skriving av brukeropplysninger feilet."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Sletting av brukeropplysninger feilet (feil %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(feil %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(feil)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Husk"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Huk av om du vil lagre brukeropplysninger "
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Din organisasjon)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,20 +125,15 @@ msgstr "Avansert..."
msgid "Opens dialog with provider settings"
msgstr "Åpner dialog med tilbyder innstillinger"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "%s Påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr "Velg kilden for din påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Bruk brukerdetaljer fra Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Bruk fra Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -68,35 +141,15 @@ msgstr ""
"Velg denne opsjonen om du vil bruke brukerinformasjon lagret i Windows "
"Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr "Din nåværende brukerinformasjon i Windows Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Fjern påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Bruk fra &profil konfigurasjon:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Klikk for å fjerne påloggingsinformasjon fra Credential Manager.\n"
"Merk: Du vil bli bedt om å oppgi påloggingsinformasjon når du kobler til."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Sett påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Klikk her for å sette eller endre påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Bruk brukerinformasjon fra &profil konfigurasjon:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -104,39 +157,67 @@ msgstr ""
"Velg denne opsjonen om du vil lagre brukerinformasjon som en del av profil "
"konfigurasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Profil konfigurasjon brukerinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Fjern påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Klikk for å fjerne påloggingsinformasjon fra Credential Manager.\n"
"Merk: Du vil bli bedt om å oppgi påloggingsinformasjon når du kobler til."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Sett påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Klikk her for å sette eller endre påloggingsinformasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "Bruker ID og passord"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Vennligst oppgi bruker ID og passord."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Bruker ID:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr "Oppgi ditt brukernavn (bruker@domain.org, DOMIAN\\User, etc)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Passord:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Oppgi ditt passord"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Bruker ID"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Vennligst oppgi bruker ID."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Din organisasjon"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -145,53 +226,41 @@ msgstr ""
"organisasjon introduseres vil sluttbrukere lettere forstå meldinger fra "
"programmet og kan gi korrekt respons."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Din organisasjons %navn:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Din organisasjons navn som det vil fremkomme på kontakt helpdesk varslinger"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Vennligst, vær kort)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Helpdesk kontakt&informasjon:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Nettadresse til din helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "E-post adresse til din helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Telefonnummer til din helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Oppgi unik identifikator"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -199,33 +268,33 @@ msgstr ""
"Tildel din organisasjon en unik ID for å tillate bruk av de samme "
"brukeropplysninger i forskjellige nettverksprofiler"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Namespace:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Oppgi unik &identifikator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"Din organisasjons ID for å kunne bruke de samme brukeropplysninger i andre "
"profiler"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Konfigurasjonslås"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -233,49 +302,89 @@ msgstr ""
"Din konfigurasjon kan låses for å hindre utilsiktet modifikasjon av "
"sluttbrukere. Brukere vil kun kunne oppgi brukerinformasjon."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
"&Lås denne konfigurasjonen og hindre modifikasjon via brukergrensesnitt."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr "(Advarsel: Når låst, kan du ikke gå tilbake til denne dialogen!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Velg den bruker ID som supplikat introduserer seg som til autentikator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Faktisk identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Bruke mitt faktiske brukernavn"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Bruk &tom identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Utelat mitt brukernavn og bruk kun @mydomian.org"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Tilpasset &identitet:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Spesifiser tilpasset identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Tilpasset identitet som brukes"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Konfigurasjon av EAP forbindelse"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "EAP Identitetstilbyder"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Brukeropplysninger"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "EAP brukeropplysninger"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "For mer hjelp og instruksjoner, kontakt %s via:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "Din tilbyder"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Åpne standard nettleser"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Åpne e-post program"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Ring telefon"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -284,36 +393,118 @@ msgstr ""
"%s har pre-satt deler av denne konfigurasjonen. De delene er låst for å "
"hindre utilsiktet modifikasjon."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Din tibyder"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Tidligere forsøk på tilkobling rapporterte feil brukeropplysninger."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Tidligere forsøk på tilkobling rapporterte brukeropplysninger utløpt på dato"
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Tidligere forsøk på tilkobling rapporterte at dine brukeropplysninger blir "
"endret. "
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Tidligere forsøk på tilkobling feilet."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Vennligst sjekk at dine brukeropplysninger er korrekt, eller prøv igjen "
"senere."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"%s versjonen som er installert på denne enheten logger brukeropplysninger på"
" en synlig og lettlest måte. "
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Vennligst revurder nødvendigheten av å oppgi dine brukeropplysninger."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Indre EAP metode"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Velg og konfigurer indre EAP metode"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Innstillinger"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Listede EAP metoder feilet (feil %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Listede EAP metoder feilet (feil %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Konfigurasjon av EAP metode feilet (feil %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Konfigurasjon av EAP metode feilet (feil %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "GTC Challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Vennligst responder."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Server challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Skriv din respons her"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "EAP-GTC autentisering &modus:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Velg EAP-GTC autentiseringsmodus fra listen"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Challenge/Response"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Passord"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "%s Challenge"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "MSCHAPv2 bruker ID and passord"
@ -327,12 +518,8 @@ msgid "Server Trust"
msgstr "Server Trust"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Beskriv tjenere du stoler på for å hindre tyveri av brukeropplysninger i "
"tilfelle et man-in-the-middle angrep."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -367,15 +554,15 @@ msgstr "Legger til en ny CA fra filen til listen"
msgid "&Remove CA"
msgstr "&Fjern CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Fjerner valgte CA fra listen"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Aksepterte tjener&navn:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -383,27 +570,27 @@ msgstr ""
"En semikolon separert liste med aksepterte tjener FQDN navn; blank for å "
"hoppe over navne sjekk; Unicode tegn er tillatt"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Eksempel: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Bruker sertifikat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Vennligst velg ditt &sertifikat for autentisering."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Klientsertifikat for autentisering "
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Tilpasset &identitet:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -412,191 +599,114 @@ msgstr ""
" for å bruke den fra sertifikatet. "
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Ugyldig tegn funnet i navn: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Valideringskonflikt"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<tom>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Legg til sertifikat"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Sertifikat filer (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 sertifikat filer (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 sertifikat filer (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Alle filer (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Ugyldig eller ikke støttet sertifikat fil %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Feil"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Ytre identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Velg den bruker ID som supplikat introduserer seg som til autentikator:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "&Faktisk identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Bruke mitt faktiske brukernavn"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Bruk &tom ytre identitet (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Utelat mitt brukernavn og bruk kun @mydomian.org"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "&Tilpasset ytre identitet:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Spesifiser tilpasset ytre identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Tilpasset ytre identitet som brukes"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Feil under skriving av brukeropplysninger til Credential Manager: %hs (feil "
"%u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr "Kall av EAP identitet UI feilet (feil %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Skriving av brukeropplysninger feilet."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Kall av EAP identitet UI feilet (feil %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Indre autentisering"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "Kall av EAP interaktivt UI feilet (feil %u, %s, %s)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Kall av EAP interaktivt UI feilet (feil %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Ytre autentisering"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Indre autentisering"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Velg den indre autentiseringsmetoden fra listen"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Er du sikker på at du vil fjerne tilbyder %s permanent fra konfigurasjonen?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Advarsel"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Tilbyder innstillinger"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Andre EAP metoder..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Sletting av brukeropplysninger feilet (feil %u)"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<feil %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "EAP-TTLS metode"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<feil>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<blank ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Husk"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Huk av om du vil lagre brukeropplysninger "
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Din organisasjon>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Konfigurasjon av EAP forbindelse"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "EAP Metoder"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moduler for støtte av individuelle EAP metoder"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,103 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Tomasz Wolniewicz <tw2529@gmail.com>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Polish (Poland) (https://www.transifex.com/eduroam_devel/teams/11799/pl_PL/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl_PL\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.9\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Czy jesteś pewny, że chcesz usunąć konfigurację dostawcy tożsamości %s?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Ostrzeżenie"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Poświadczenia EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Ustawienia dostawcy tożsamości"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "Poświadczenia użytkownika %s"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr "Błąd przy zapisie poświadczeń w Menadżerze poświadczeń: %hs (błąd %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Nie udało się zapisać poświadczeń."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Błąd przy usuwaniu poświadczeń (błąd %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(błąd %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(błąd)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(puste ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Zapamiętaj"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Zaznacz, jeżeli chcesz zachować swoje poświadczenia"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Twoja Instytucja)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,34 +122,48 @@ msgstr "Zaawansowane..."
msgid "Opens dialog with provider settings"
msgstr "Otwiera okno z ustawieniami dostawcy tożsamości"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Wskaż miejsce, gdzie będą przechowywane Twoje poświadczenia logowania."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Użyj z &Managera poświadczeń:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
"Zaznacz tę opcję, jeżeli chcesz przechowywać poświadczenia w Managerze "
"poświadczeń systemu Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
msgstr "Twoje poświadczenia zapisane w Managerze poświadczeń systemu Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Użyj &profilu konfiguracyjnego:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Zaznacz tę opcję, jeżeli chcesz zachować poświadczenia w ramach profilu "
"konfiguracyjnego"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Poświadczenia z profilu konfiguracyjnego"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Usuń poświadczenia"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
@ -82,59 +171,53 @@ msgstr ""
"Kliknij aby usunąć poświadczenia z Menadżera poświadczeń.\n"
"Uwaga: Przy ponownym połączeniu zostaniesz poproszony o wprowadzenie poświadczeń."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Ustaw poświadczenia"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Kliknij tutaj, aby zmodyfikować poświadczenia logowania"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
msgstr "Identyfikator i hasło"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Proszę wprowadzić identyfikator i hasło."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Identyfikator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Wprowadź swój identyfikator (użytkownik@domena.org, DOMENA\\Użytkownik, "
"itp.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Hasło:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Wprowadź hasło"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Identyfikator"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Proszę wprowadzić identyfikator."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Twoja Instytucja"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -142,54 +225,42 @@ msgstr ""
"Opisz Twoją instytucję, aby spersonalizować komunikaty. Jeżeli instytucja "
"jest ustawiona użytkownicy łatwiej rozumieją komunikaty i reagują na nie. "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "&Nazwa Twojej instytucji:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Nazwa Twojej instytucji, tak jak ma być pokazana przy wskazaniach do "
"helpdesku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(postaraj się, by było krótko)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "&Kontakt do helpdesku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Adres WWW twojego helpdesku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "Adres e-mail Twojego helpdesku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Numer telefonu Twojego helpdesku"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Unikatowy Identyfikator Dostawcy Tożsamości"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -197,33 +268,33 @@ msgstr ""
"Nadaj Twojej instytucji unikatowy identyfikator, by umożliwić używanie tego "
"samego zestawu poświadczeń w kilku profilach sieciowych."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Namespace:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Unikatowy &identyfikator Dostawcy Tożsamości:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"Unikatowy identyfikator Twojej instytucji umożliwiający używanie tych samych"
" poświadczeń z innych profili"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Blokada konfiguracji"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -232,51 +303,92 @@ msgstr ""
"przez użytkowników końcowych. Użytkownicy będą mogli wprowadzać "
"poświadczenia, ale nic poza tym. "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
"&Zablokuj konfigurację przed modyfikacją poprzez interfejs użytkownika."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Uwaga: Po zablokowaniu nie będziesz mógł tego wycofać przy pomocy tego "
"interfejsu!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Tożsamość"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Wybierz identyfikator, a pomocą którego supplicant przedstawie się serwerowi"
" uwierzytelniającemu:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Rzeczywista tożsamość"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Korzystaj z mojego rzeczywistego identyfikatora"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Użyj &pustego identyfikatora"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Pomiń mój identyfikator i użyj tylko @mydomain.org"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Niestandardowy &identyfikator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Podaj niestandardowy identyfikator"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Niestandardowy identyfikator"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Konfiguracja Połączenia EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Dostawca tożsamości EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "Poświadczenia %s"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Poświadczenia EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "W celu otrzymania pomocy i instrukcji skontaktuj się z %s poprzez:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "Twój dostawca tożsamości"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Otwórz w domyślnej przeglądarce WWW"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Otwórz w programie obsługi e-mail"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Wybierz numer telefonu"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -285,56 +397,136 @@ msgstr ""
"Ta konfiguracja dla %s jest częściowo pre-definiowana. Te części są "
"zablokowane, aby zapobiec przypadkowej modyfikacji."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Twój dostawca tożsamości"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Poprzednie próby połączenia zgłosiły błąd poświadczeń logowania."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Poprzednie próby połączenia zgłosiły błąd przedawnienia poświadczeń "
"logowania."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Poprzednie próby połączenia zgłosiły, że poświadczenia logowania zostały "
"zmienione."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Poprzednie próby połączenia były nieudane."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Upewnij się, że Twoje poświadczenia logowania są poprawne, albo spróbuj "
"ponownie później."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"Zainstalowana na tym komputerze wersja %s zapisuje poświadczenia w sposób "
"łatwy do odczytania."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
"Proszę, rozważ ponownie, czy wprowadzenie Twoich poświadczeń logowania jest "
"niezbędne."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Wewnętrzna metoda EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Wybierz i skonfiguruj wewnętrzną metodę EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Ustawienia"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Błąd przy listowaniu metod EAP (błąd %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Błąd przy listowaniu metod EAP (błąd %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Błąd przy konfigurowaniu metody EAP (błąd %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Błąd przy konfigurowaniu metody EAP (błąd %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Hasło"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
msgstr "Identyfikator i hasło dla MSCHAPv2"
#: lib/PAP_UI/src/PAP_UI.cpp:33
msgid "PAP User ID and Password"
msgstr ""
msgstr "Identyfikator i hasło dla PAP"
#: lib/TLS_UI/res/wxTLS_UI.cpp:17
msgid "Server Trust"
msgstr "Zaufane serwery"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Opisz serwery, którym ufasz, aby uniknąć możliwości przejęcia poświadczeń w "
"atakach typu man-in-the-middle."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -345,6 +537,8 @@ msgid ""
"Server's certificate must be issued by one of certificate authorities listed"
" here"
msgstr ""
"Certyfikat serwera musi być wystawiony przez jeden z urzędów wymienionych na"
" liście"
#: lib/TLS_UI/res/wxTLS_UI.cpp:47
msgid "Add CA from Store..."
@ -367,15 +561,15 @@ msgstr "Dodaje do listy nowy Urząd Certyfikacji z pliku"
msgid "&Remove CA"
msgstr "&Usuń Urząd"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Usuwa z listy wybrane urzędy certyfikacji"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Dopuszczalne &nazwy serwerów:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -383,27 +577,29 @@ msgstr ""
"Lista nazw domenowych serwerów rozdzielana średnikami; pusta lista oznacza "
"brak sprawdzenia nazw; dozwolone są znaki Unicode"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Przykład: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
msgstr "Certyfikat użytkownika"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
"Wybierz certyfikat klienta, który ma być używany przy Twoim "
"uwierzytelnieniu."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Certyfikat klienta używany do uwierzytelnienia"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Niestandardowy &identyfikator:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -412,190 +608,115 @@ msgstr ""
"w certyfikacie; pusty wpis spowoduje użycie identyfikatora z certyfikatu"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "W nazwie hosta znaleziono nieprawidłowy znak: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Błąd walidacji danych"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<pusty>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Dodaj certyfikat"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Pliki certyfikatów (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "Pliki certyfikatów X.509 (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "Pliki certyfikatów PKCS #7 (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Wszystkie pliki (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Nieprawidłowy, albo niewspierany plik certyfikatu %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Błąd"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Tożsamość zewnętrzna"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Wybierz identyfikator, a pomocą którego supplicant przedstawie się serwerowi"
" uwierzytelniającemu:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "&Rzeczywista tożsamość"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Korzystaj z mojego rzeczywistego identyfikatora"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Użyj &pustego identyfikatora zewnętrznego (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Pomiń mój identyfikator i użyj tylko @mydomain.org"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "&Niestandardowa tożsamość zewnętrzna:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Podaj niestandardowy identyfikator zewnętrzny"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Niestandardowy identyfikator zewnętrzny"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr "Błąd przy zapisie poświadczeń w Menadżerze poświadczeń: %hs (błąd %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
"Błąd przy uruchomieniu interfejsu użytkownika dla EAP (błąd %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Nie udało się zapisać poświadczeń."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Błąd przy uruchomieniu interfejsu użytkownika dla EAP (błąd %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Uwierzytelnienie wewnętrzne"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Uwierzytelnienie "
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Uwierzytelnienie wewnętrzne"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Wymierz metodę uwierzytelnienia wewnętrznego z listy"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Czy jesteś pewny, że chcesz usunąć konfigurację dostawcy tożsamości %s?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Ostrzeżenie"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Ustawienia dostawcy tożsamości"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Inne metody EAP ..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Błąd przy usuwaniu poświadczeń (błąd %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<błąd %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Metoda EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<błąd>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<puste ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Zapamiętaj"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Twoja Instytucja>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Konfiguracja Połączenia EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Metody EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moduły obsługujące konkretne metody EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

View File

@ -1,35 +1,110 @@
#
# Translators:
# Pedro Simões <psimoes@fccn.pt>, 2017
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Pedro Simões <psimoes@fccn.pt>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Portuguese (Portugal) (https://www.transifex.com/eduroam_devel/teams/11799/pt_PT/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pt_PT\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Alerta"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Credenciais EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Definições do Fornecedor"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Memorizar"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:38
msgid "Adds new provider"
msgstr ""
msgstr "Adiciona novo fornecedor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:42
msgid "-"
@ -37,7 +112,7 @@ msgstr "-"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:43
msgid "Removes selected provider"
msgstr ""
msgstr "Remove o fornecedor selecionado"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:47
msgid "Advanced..."
@ -47,249 +122,359 @@ msgstr "Avançadas..."
msgid "Opens dialog with provider settings"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Definir Credenciais..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr ""
msgstr "ID do utilizador:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Palavra passe:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Coloque aqui a sua palavra passe"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
msgid "Your Organization"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID do utilizador"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "A sua Organização"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Credenciais"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Credenciais EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr ""
msgstr "o seu fornecedor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr ""
msgstr "Abrir o seu programa de email"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Marcar o número de telefone"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
"prevent accidental modification."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr ""
msgstr "O seu fornecedor"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Definições"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr ""
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Palavra-passe"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
@ -303,9 +488,7 @@ msgid "Server Trust"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
@ -337,230 +520,157 @@ msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:57
msgid "&Remove CA"
msgstr ""
msgstr "&Remover CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
msgstr "Certificado do Utilizador"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr ""
msgstr "Adicionar Certificado"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr ""
msgstr "Todos os Ficheiros (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr ""
msgstr "Erro"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr ""
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %ls provider from configuration?"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Memorizar"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr ""

729
EAPMethods/locale/ro_RO.po Normal file
View File

@ -0,0 +1,729 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
# Raul Opruta <raul.opruta@roedu.net>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Raul Opruta <raul.opruta@roedu.net>, 2020\n"
"Language-Team: Romanian (Romania) (https://www.transifex.com/eduroam_devel/teams/11799/ro_RO/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ro_RO\n"
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Sunteți sigur că doriți să eliminați definitiv furnizorul %s din "
"configurație?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Avertizare"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Credenţiale EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Setări de provider"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s Credenţiale utilizator"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Eroare la scriere a credențialelor în Managerul de credențiale: % hs "
"(eroare%u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr " Scrierea credențialele nu au reușit."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Ştergerea credenţialelor eşuată (eroare %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(nici unul)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(eroare %u )"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(eroare)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(ID gol)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Ţine minte"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr " Verificați dacă doriți să salvați datele de acreditare"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Organizaţia ta)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:38
msgid "Adds new provider"
msgstr "Adaugă un nou furnizor"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:42
msgid "-"
msgstr "-"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:43
msgid "Removes selected provider"
msgstr "Înlătură furnizorul selectat"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:47
msgid "Advanced..."
msgstr "Avansat..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:48
msgid "Opens dialog with provider settings"
msgstr "Deschide dialogul cu setările furnizorului"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
"Selectați sursa în care sunt stocate datele de acreditare folosite pentru a "
"vă conecta."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Utilizați de la Credențiale & Management:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
"Selectați această opțiune dacă doriți să utilizați credețialele stocate în "
"Windows Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr "Credențiele dvs. actuale sunt stocate în Windows Credential Manager"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Utilizați din configurarea profilului:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
"Selectați această opțiune dacă doriți să stocați credențialele ca parte a "
"configurației profilului"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr " Credențialele de configurare a profilului"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "%Ştergere Credenţiale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Faceți clic pentru a șterge credențialele din Managerul de credenţiale.\n"
"Notă: Vi se va solicita să introduceți credențialele atunci când vă conectați."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Setare credenţiale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Apasă aici pentru a modifica credenţialele"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "ID de utilizator și parolă"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Vă rugăm să furnizați ID-ul de utilizator și parola."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "ID utilizator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Introduceți numele de utilizator aici (user@domain.org, DOMENIU \\ User "
"etc.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Parolă:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Introduceţi parola aici:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID Utilizator"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Vă rugăm să furnizați ID-ul de utilizator."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Organizaţia dumneavostră"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
msgstr ""
"Descrieți organizația dumneavoastră pentru a personaliza solicitările "
"utilizatorilor. Când este introdusă organizația, utilizatorii finali găsesc "
"mesajele de program mai ușor de înțeles și de acționat."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Numele organizaţiei dumneavoastră &:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Numele organizației dumneavoastră, așa cum va apărea în notificările de "
"contact ale helpdesk"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Păstrați-l scurt, vă rog)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Contact și informații despre asistență:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Adresa web de asistență"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "Adresa de e-mail de asistență"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Numărul de telefon de asistență"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Identificator unic al furnizorului"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
msgstr ""
"Alocați organizației dumneavostră un ID unic care să permită partajarea "
"aceluiași set de credințiale pe diferite profiluri de rețea."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Spaţiu de nume:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Identificator unic și identificator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"ID-ul organizației dumneavoastră pentru a atribui aceleași date de "
"acreditare de la alte profiluri"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Configurare Blocată"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
msgstr ""
"Configurația dumneavoastră poate fi blocată pentru a preveni modificarea "
"accidentală de către utilizatorii finali. Utilizatorii vor avea voie să "
"introducă numai datele de acreditare."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
"& Blocați această configurație și preveniți alte modificări prin interfața "
"utilizatorului"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr "(Avertisment: odată blocat, nu puteți reveni folosind acest dialog!)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identitate"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Selectați ID-ul utilizatorului implicit care se introduce ca autentificator:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&Identitate adevărată"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Utilizați numele meu de utilizator adevărat"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Utilizați & identitate goală"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Omiteți numele meu de utilizator si folositi doar @ mydomain.org"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "& Identitate personalizată:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Precizați identitatea personalizată"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Identitate personalizată de utilizat"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Configurare conexiune EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Furnizor de identitate EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s Credenţiale"
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
"Pentru ajutor și instrucțiuni suplimentare, vă rugăm să contactați %s la : "
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "providerul dumneavoastră"
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Deschideți browserul web implicit"
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Deschideți programul de e-mail"
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Apelează numărul de telefon"
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
"prevent accidental modification."
msgstr ""
"%s are părți prestabilite ale acestei configurații. Aceste piese sunt "
"blocate pentru a preveni modificarea accidentală."
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Furnizorul dumneavostră"
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Încercarea anterioară de conectare a raportat credențiale nevalide ."
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Încercarea anterioară de conectare a raportat datele de acreditare expirate."
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Încercarea anterioară de conectare a raportat că datele de acreditare au "
"fost modificate."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Încercarea anterioară de conectare a eșuat."
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Vă rugăm, asigurați-vă că datele de acreditare sunt corecte sau încercați "
"din nou mai târziu."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"Versiunea instalată %s pe acest computer înregistrează datele de acreditare "
"în mod vizibil și ușor de citit."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
"Vă rugăm să reconsiderați necesitatea de a introduce datele de acreditare."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Metoda EAP interioară"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Selectați și configurați metoda EAP interioară"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Setări"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Enumerarea metodelor EAP a eșuat (eroare %u , %s , %s )."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Enumerarea metodelor EAP a eșuat (eroare %u )."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Configurarea metodei EAP a eșuat (eroare %u,%s,%s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Configurarea metodei EAP a eșuat (eroare %u )."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "Provocarea GTC"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Vă rugăm să ne oferiți răspunsul."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Provocarea serverului"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Introduceți răspunsul aici"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "Autentificare și &mod EAP-GTC:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Selectați modul de autentificare EAP-GTC din listă"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Provocare/Răspuns"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Parolă"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "%s Provocare"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "MSCHAPv2 Utilizator şi Parolă"
#: lib/PAP_UI/src/PAP_UI.cpp:33
msgid "PAP User ID and Password"
msgstr "PAP Utilizator şi Parolă"
#: lib/TLS_UI/res/wxTLS_UI.cpp:17
msgid "Server Trust"
msgstr "Server de încredere"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Descrieți serverele de încredere pentru a preveni atacurile de tipul man-in-"
"the-middle."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
msgstr "Autorități de certificare acceptate:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:40
msgid ""
"Server's certificate must be issued by one of certificate authorities listed"
" here"
msgstr ""
"Certificatul de server trebuie eliberat de una dintre autoritățile de "
"certificare enumerate aici"
#: lib/TLS_UI/res/wxTLS_UI.cpp:47
msgid "Add CA from Store..."
msgstr "Adăugare CA din magazin..."
#: lib/TLS_UI/res/wxTLS_UI.cpp:48
msgid ""
"Adds a new certificate authority from the certificate store to the list"
msgstr ""
"Adaugă o nouă autoritate de certificare din magazinul de certificate în "
"listă"
#: lib/TLS_UI/res/wxTLS_UI.cpp:52
msgid "Add CA from File..."
msgstr "Adăugare CA din fişier..."
#: lib/TLS_UI/res/wxTLS_UI.cpp:53
msgid "Adds a new certificate authority from the file to the list"
msgstr "Adaugă o nouă autoritate de certificare din fișier în listă"
#: lib/TLS_UI/res/wxTLS_UI.cpp:57
msgid "&Remove CA"
msgstr "&Ştergere CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Îndepărtează autoritățile de certificare selectate din listă"
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Server și nume acceptate:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
msgstr ""
"Punct și virgulă delimitează lista de nume de servere FQDN ; lăsați spațiu "
"gol pentru a omite verificarea numelui; Caractere Unicode permise"
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Exemplu: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Certificatul de utilizator"
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
"Vă rugăm să selectați certificatul dumneavoastră de utilizat pentru "
"autentificare."
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Certificat de client de folosit pentru autentificare"
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Personalizare și identitate:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
msgstr ""
"Identitatea dumneavoastră (nume de utilizator @ domeniu) pentru a trece "
"peste un certificat; sau necompletat pentru a utiliza unul prevăzut în "
"certificat"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "No certificate selected"
msgstr "Niciun certificat selectat"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Conflict la validare"
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Adaugă certificat"
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Fişierele Certificat (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "X.509 Fişierele Certificat (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "PKCS #7 Fişierele Certificat (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Toate filele (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Fișier de certificat %s nevalid sau neacceptat "
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Eroare"
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr " Invocarea interfaței de identitate EAP a eșuat (eroare%u,%s,%s)."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Invocarea interfaței de identitate EAP a eșuat (eroare%u)."
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "Invocarea EAP EI interactivă a eșuat (eroare %u,%s,%s)."
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Invocarea EAP EI interactivă a eșuat (eroare %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Autentificare exterioară"
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Autentificare interioară"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Selectați metoda de autentificare interioară din listă"
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Alte metode EAP..."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Metoda EAP-TTLS"
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Metodele EAP"
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Module pentru a sprijini metodele individuale EAP"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,105 @@
#
# Translators:
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/eduroam_devel/teams/11799/sl_SI/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: sl_SI\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Ali ste prepričani, da želite trajno izbrisati ponudnika %s iz "
"konfiguracije?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Opozorilo"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "Poverilnice EAP"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Nastavitve ponudnika"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "Uporabnikove poverilnice za %s"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Napaka pri zapisovanju poverilnic v upravitelja poverilnic: %hs (napaka %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Zapisovanje poverilnic ni uspelo."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Izbris poverilnic ni uspel (napaka %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(brez)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(napaka %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(napaka)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(prazen ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "Za&pomni si"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Odkljukajte, če želite shraniti poverilnice"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(vaša organizacija)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,20 +124,15 @@ msgstr "Napredno ..."
msgid "Opens dialog with provider settings"
msgstr "Odpre dialog z nastavitvami ponudnika"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "Uporabnikove poverilnice za %s"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr "Izberite vir, kjer so shranjene vaše poverilnice za povezovanje."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Uporabi poverilnice iz &Upravitelja poverilnic:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Uporabi iz &Upravitelja poverilnic:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -68,35 +140,15 @@ msgstr ""
"Izberite to možnost, če želite uporabiti poverilnice shranjene v Upravitelju"
" poverilnic Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr "Vaše trenutne poverilnice shranjene v Upravitelju poverilnic Windows"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "Počisti poverilni&ce"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Uporabi iz nastavitev &profila:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Kliknite, da počistite svoje poverilnice iz upravitelja poverilnic.\n"
"Opomba: Za vnos poverilnic boste pozvani ob povezovanju."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "Na&stavi poverilnice ..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Kliknite tukaj, da nastavite ali spremenite svoje poverilnice"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Uporabi poverilnice iz nastavitev &profila:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -104,39 +156,67 @@ msgstr ""
"Izberite to možnost, če želite shraniti poverilnice kot del nastavitev "
"profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Poverilnice nastavitev profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "Počisti poverilni&ce"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Kliknite, da počistite svoje poverilnice iz upravitelja poverilnic.\n"
"Opomba: Za vnos poverilnic boste pozvani ob povezovanju."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "Na&stavi poverilnice ..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Kliknite tukaj, da nastavite ali spremenite svoje poverilnice"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "ID uporabnika in geslo"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Vnesite svoj ID uporabnika in geslo."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "ID uporabnika:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr "Tukaj vnesite svoje up. ime (up. ime@domena.si, DOMENA\\Uporabnik ipd.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Geslo:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Tukaj vnesite svoje geslo"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "ID uporabnika"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Vnesite svoj ID uporabnika."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Vaša organizacija"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -145,54 +225,42 @@ msgstr ""
"predstavi, uporabniki lažje razumejo sporočila programa in ustrezneje "
"reagirajo."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "Ime vaše orga&nizacije:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Ime vaše organizacije, kot bo nastopalo na obvestilih s stikom na center za "
"pomoč"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(Naj bo kratko, prosim)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Podatk&i centra za pomoč:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Naslov spletne strani vašega centra za pomoč"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "E-poštni naslov vašega centra za pomoč"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Telefonska številka vašega centra za pomoč"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Enolični identifikator ponudnika"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -200,33 +268,33 @@ msgstr ""
"Dodelite svoji organizaciji enoznačen identifikator, da omogočite souporabo "
"istih poverilnic različnim omrežnim profilom."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "Ime&nski prostor:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Enolični &identifikator ponudnika:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"Identifikator vaše organizacije za souporabo istih poverilnic različnih "
"profilov"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Zaklep konfiguracije"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -234,7 +302,7 @@ msgstr ""
"Svojo konfiguracijo lahko zaklenete in preprečite končnim uporabnikom "
"nenamerno spreminjanje. Uporabniki bodo lahko vnašali samo poverilnice."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -242,42 +310,81 @@ msgstr ""
"Zak&leni to konfiguracijo in prepreči vse nadaljnje spremembe preko up. "
"vmesnika."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr "(Pozor: Ko zaklenete, vrnitev ne bo več možna preko tega dialoga!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identiteta"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr "Izberite ID uporabnika, s katerim se prosilec predstavi overovitelju:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "Prava iden&titeta"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Uporabi moje pravo uporabniško ime"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Uporabi prazno id&entiteto"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Izpusti moje uporabniško ime in uporabi samo @mojadomena.si"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "&Identiteta po meri:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Navedite identiteto po meri"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Zunanja po meri za uporabo"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Konfiguracija povezave EAP"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "Ponudnik identitete EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "Poverilnice za %s"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "Poverilnice EAP"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Za dodtano pomoč ali navodila se obrnite na %s na:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "vaš ponudnik"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Odpre privzeto nastavljen spletni brskalnik"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Odpre vaš program za e-pošto"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Pokliče telefonsko številko"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -286,33 +393,115 @@ msgstr ""
"%s je prednastavil dele te konfiguracije. Ti deli so zaklenjeni zaradi "
"preprečevanja nenamernih sprememb."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Vaš ponudnik"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr "Prejšnji poskus povezave je javil, da so poverilnice napačne."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr "Prejšnji poskus povezave je javil, da so poverilnice potekle."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Prejšnji poskus povezave je javil, da so poverilnice v postopku "
"spreminjanja."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Prejšnji poskus povezave ni uspel."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr "Preverite, ali so vaše poverilnice pravilne ali poskusite kasneje."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"Verzija %s nameščena na tem računalniku beleži poverilnice na viden in "
"preprosto berljiv način."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Premislite o nujnosti vpisovanja svojih poverilnic."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Notranja metoda EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Izberite in nastavite notranjo metodo EAP"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "Na&stavitve"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Oštevilčevanje metod EAP ni uspelo (napaka %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Oštevilčevanje metod EAP ni uspelo (napaka %u)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Nastavljanje metode EAP ni uspelo (napaka %u, %s, %s)."
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Nastavljanje metode EAP ni uspelo (napaka %u)."
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "Vprašanje GTC"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Vnesite svoj odgovor."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Strežnikovo vprašanje"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Vnesite svoj odgovor tukaj"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "&Način overovljanja EAP-GTC:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Izberite način overovljanja EAP-GTC s seznama"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Vprašanje/odgovor"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Geslo"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "Vprašanje %s"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "ID uporabnika in geslo za MSCHAPv2"
@ -326,12 +515,9 @@ msgid "Server Trust"
msgstr "Zaupanje strežniku"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Opišite strežnike, ki jim zaupate in preprečite prestrezanje poverilnic v "
"primeru napada \"vmesnega člena\"."
"Opišite strežnike, ki jim zaupate in preprečite napade \"vmesnega člena\"."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -366,15 +552,15 @@ msgstr "Doda novega izdajatelja potrdil iz datoteke na seznam"
msgid "&Remove CA"
msgstr "Odst&rani CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Odstrani izbrane izdajatelje potrdil s seznama"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Sprejemljiva ime&na strežnika:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -382,27 +568,27 @@ msgstr ""
"S podpičji ločen seznam sprejemljivih strežnikovih imen FQDN; prazno, da "
"izpusti preverjanje imena; znaki Unicode dovoljeni"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(Primer: vzo.rec.si;streznik2.rec.si)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Uporabnikovo potrdilo"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Izberite svoje potrdilo za uporabo med overovljanjem."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Odjemalčevo potrdilo za overovljanje"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "&Identiteta po meri:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -411,190 +597,114 @@ msgstr ""
"prazno, če želite uporabiti tisto s potrdila"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Napačen znak v imenu gostitelja: %c"
msgid "No certificate selected"
msgstr "Digitalno potrdilo ni izbrano"
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Nesoglasje pri preverjanju"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<prazno>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Dodaj potrdilo"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Datoteke s potrdili (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "Datoteke s potrdili X.509 (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "Datoteke s potrdili PKCS #7 (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Vse datoteke (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Napačna ali nepodprta datoteka s potrdilom %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Napaka"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Zunanja identiteta"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr "Izberite ID uporabnika, s katerim se prosilec predstavi overovitelju:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "Prava iden&titeta"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Uporabi moje pravo uporabniško ime"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Uporabi prazno zunanjo id&entiteto (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Izpusti moje uporabniško ime in uporabi samo @mojadomena.si"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "Zunanja identiteta po &meri:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Navedite zunanjo identiteto po meri"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Zunanja identiteta po meri za uporabo"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Napaka pri zapisovanju poverilnic v upravitelja poverilnic: %hs (napaka %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr "Zagon up. vmesnika za identiteto EAP ni uspel (napaka %u, %s, %s)."
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Zapisovanje poverilnic ni uspelo."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr "Zagon up. vmesnika za identiteto EAP ni uspel (napaka %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Notranje overovljanje"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr "Zagon interaktivnega up. vmesnika EAP ni uspel (napaka %u, %s, %s)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr "Zagon interaktivnega up. vmesnika EAP ni uspel (napaka %u)."
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Zunanje overovljanje"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
msgid "Select inner authentication method from the list"
msgstr "Izberite postopek notranjega overovljanja s seznama"
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Notranje overovljanje"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Izberite metodo notranjega overovljanja s seznama"
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Ali ste prepričani, da želite trajno izbrisati ponudnika %s iz "
"konfiguracije?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Opozorilo"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Nastavitve ponudnika"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Druge metode EAP ..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Izbris poverilnic ni uspel (napaka %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<napaka %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "Metoda EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<napaka>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<prazen ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "Za&pomni si"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Odkljukajte, če želite shraniti poverilnice"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<vaša organizacija>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Konfiguracija povezave EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "Postopki EAP"
msgstr "Metode EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moduli, ki omogočajo posamezne postopke EAP"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"
msgstr "Moduli, ki omogočajo posamezne metode EAP"

View File

@ -1,28 +1,106 @@
#
# Translators:
# Marko Eremija <marko.eremija@amres.ac.rs>, 2017
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Marko Eremija <marko.eremija@amres.ac.rs>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Serbian (https://www.transifex.com/eduroam_devel/teams/11799/sr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: sr\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Da li ste sigurni da želite da trajno uklonite %s provajdera iz "
"konfiguracije?"
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr "Upozorenje"
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr "EAP kredencijali"
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr "Podešavanja provajdera"
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr "%s korisnikovi kredencijali"
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
"Greška prilikom upisa kredencijala u Menadžera kredencijala: %hs (greška %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr "Upis kredencijala je neuspešan."
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Brisanje kredencijala neuspešno (greška %u)."
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr "(bez)"
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr "(greška %u)"
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr "(greška)"
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr "(prazan ID)"
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr "&Zapamti"
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr "Označite ako želite da sačuvate kredencijale"
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr "(Vaša organizacija)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr "+"
@ -47,20 +125,15 @@ msgstr "Napredno..."
msgid "Opens dialog with provider settings"
msgstr "Otvara dijalog sa podešavanjima za provajdera"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr "%s korisnikovi kredencijali"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr "Izaberite izvor gde se nalaze vaši kredencijali za povezivanje."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
msgstr "Koristi kredencijale iz &Manager kredencijala:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr "Koristi iz &Manager kredencijala:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
@ -68,35 +141,15 @@ msgstr ""
"Odaberite ovu opciju ako želite da koristite kredencijale sačuvane u Windows"
" menadžeru kredencijala"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr "Vaši trenutni kredencijali se čuvaju u Windows menadžeru kredencijala"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
msgstr "&Clear kredencijale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr "Koristi iz konfiguracije &profila:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Kliknite ovde kako biste ukolnili svoje kredencijale iz menadžera kredencijala.\n"
"Napomena: Biće vam traženo da unesete kredencijale prilikom povezivanja."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr "&Set kredencijale..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr "Kliknite ovde kako biste promenili svoje kredencijale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr "Koristi kredencijale iz konfiguracije &profila:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
@ -104,41 +157,69 @@ msgstr ""
"Odaberite ovu opciju ako želite da sačuvate kredencijale kao deo "
"konfiguracije profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr "Kredencijali za konfiguraciju profila"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr "&Clear kredencijale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
"Kliknite ovde kako biste ukolnili svoje kredencijale iz menadžera kredencijala.\n"
"Napomena: Biće vam traženo da unesete kredencijale prilikom povezivanja."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr "&Set kredencijale..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr "Kliknite ovde kako biste promenili svoje kredencijale"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr "Korisničko ime i lozinka"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr "Unesite vaše korisničko ime i lozinku."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr "Korisničko ime:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Unesite vaše korisničko ime ovde (korisnik@domen.ac.rs, DOMEN\\Korisnik, "
"itd.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr "Lozinka:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr "Unesite lozinku ovde"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Korisničko ime"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Unesite vaše korisničko ime."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr "Vaša organizacija"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
@ -147,54 +228,42 @@ msgstr ""
"instalaciju. Kada se organizacija predstavi, krajnji korisnici bolje "
"razumeju poruke koje program generiše i lakše mogu da preduzimaju akcije."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr "&name vaše organizacije:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
"Ime vaše institucije u formatu koji će se pojavljivati u obaveštenjima "
"službe za podršku korisnicima"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr "(budite kratki, molimo vas)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr "Helpdesk kontakt &information:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr "Web stranice službe za podršku korisnicima"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr "e-mail adresa službe za podršku korisnicima"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr "Broj telefona službe za podršku korisnicima"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr "Jedinstveni identifikator provajdera"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
@ -202,33 +271,33 @@ msgstr ""
"Dodelite jedinstven ID vašoj organizaciji kako bi se omogućilo deljenje "
"istog seta kredencijala u više različitih mrežnih profila."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr "&Namespace:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr "Jedinstveni &identifier provajdera: "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
"ID vaše organizacije kako bi se dodelili isti kredencijali kao i na drugim "
"profilima"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr "Zaključavanje konfiguracije"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
@ -237,7 +306,7 @@ msgstr ""
"modifikacije od strane krajnjih korisnika. Korisnici će moći jedino da unesu"
" kredencijale. "
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
@ -245,44 +314,84 @@ msgstr ""
"&Lock ovu konfiguraciju i sprečite bilo kakve nove izmene preko korisničkog "
"interfejsa."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
"(Upozorenje: Kada se jednom zaključa, ne možete se vratiti na početna "
"podešavanja!)"
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr "Identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Izaberite korisničko ime kojim se softver predstavlja autentifikatoru:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr "&True identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr "Koristi moje pravo korisničko ime"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr "Koristi &prazan identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr "Izostavi korisničko ime i koristi samo @mojdomen.ac.rs"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr "Proizvoljan &identity:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr "Unesite proizvoljan identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr "Koristi proizvoljan identitet"
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr "Podešavanja za EAP povezivanje"
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr "EAP davalac identiteta"
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr "%s kredencijali"
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr "EAP kredencijali"
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr "Za dodatnu pomoć i instrukcije, kontaktirajte %s na:"
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr "vaš provajder"
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr "Otvorite uobičajeni web brauzer"
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr "Otvorite vašeg mejl klijenta"
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr "Pozovite broj"
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
@ -291,38 +400,120 @@ msgstr ""
"%s ima predefinisane delove ove konfiguracije. Ti delovi su zaključani kako "
"bi se izbegla njihova slučajna izmena."
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr "Vaš provajder"
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
"Prethodni pokušaj povezivanja je prijavio da ste uneli pogrešne "
"kredencijale."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
"Prethodni pokušaj povezivanja je prijavio da su vaši kredencijali istekli."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
"Prethodni pokušaj povezivanja je prijavio da se vaši kredencijali trenutno "
"menjaju."
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr "Prethodni pokušaj povezivanja nije bio uspešan."
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
"Proverite da li ste uneli ispravne kredencijale ili pokušajte ponovo "
"kasnije."
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
"%s verzija instalirana na ovom računaru loguje kredencijale na vidljiv i "
"lako čitljiv način."
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr "Razmotrite da li je potrebno da ponovo unosite vaše kredencijale."
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr "Unutrašnji EAP metod"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr "Odaberite i konfigurišite unutrašnji EAP metod"
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr "&Settings"
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr "Nabrajanje neuspešnih EAP metoda (greška %u, %s, %s). "
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr "Nabrajanje neuspešnih EAP metoda (greška %u). "
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr "Konfigurisanje EAP metoda nije uspešno (greška %u, %s, %s). "
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr "Konfigurisanje EAP metoda nije uspešno (greška %u). "
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr "GTC Challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr "Unesite vaš odgovor."
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr "Server challenge"
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr "Ovde unesite vaš odgovor"
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr "EAP-GTC autentifikacija &mode:"
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr "Izaberite EAP-GTC metod autentifikacije iz liste"
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr "Challenge/Response"
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr "Lozinka"
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr "%s Challenge"
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr "MSCHAPv2 korisničko ime i lozinka"
@ -336,12 +527,9 @@ msgid "Server Trust"
msgstr "Serveri kojima se veruje"
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
"Opišite servere kojima verujete kako bi se izbegla mogućnost krađe "
"kredencijala u slučaju man-in-the-middle napada."
"Opišite servere kojima verujete kako bi se izbegao man-in-the-middle napad."
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
msgid "Acceptable Certificate Authorities:"
@ -376,15 +564,15 @@ msgstr "Dodaje novo sertifikaciono telo iz fajla u listu"
msgid "&Remove CA"
msgstr "&Remove CA"
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr "Uklanja odabrano sertifikaciono telo sa liste"
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr "Prihvatljiva &names servera"
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
@ -393,27 +581,27 @@ msgstr ""
"prazno ukoliko nije potrebna provera imena servera; dozvoljeno je korišćenje"
" <i>unicode</i> karaktera"
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr "(npr: foo.bar.com;server2.bar.com)"
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr "Korisnički sertifikat"
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr "Izaberite vaš &certificate koji ćete koristiti za autentifikaciju."
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr "Klijentski sertifikat koji se koristi za autentifikaciju"
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr "Proizvoljan &identity:"
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
@ -423,191 +611,122 @@ msgstr ""
"sertifikatu"
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Neispravan karakter je pronađen u DNS imenu: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr "Konflikt prilikom validacije"
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr "<prazno>"
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr "Dodaj sertifikat"
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr "Fajlovi sa sertifikatima (*.cer;*.crt;*.der;*.p7b;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr "Fajlovi sa X.509 sertifikatima (*.cer;*.crt;*.der;*.pem)"
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr "Fajlovi sa PKCS #7 sertifikatima (*.p7b)"
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr "Svi fajlovi (*.*)"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr "Pogrešan ili nepodržan sertifikat %s"
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr "Greška"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr "Spoljni identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
"Izaberite korisničko ime kojim se softver predstavlja autentifikatoru:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr "&True identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr "Koristi moje pravo korisničko ime"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr "Koristi &empty spoljni identitet (RFC 4822)"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr "Izostavi korisničko ime i koristi samo @mojdomen.ac.rs"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr "&Custom spoljni identitet:"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr "Unesite proizvoljan spoljni identitet"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr "Koristi proizvoljan spoljni identitet"
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
"Greška prilikom upisa kredencijala u Menadžera kredencijala: %hs (greška %u)"
"Aktiviranje korisničkog interfejsa za EAP identitet je neuspešno (greška %u,"
" %s, %s). "
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
msgstr "Upis kredencijala je neuspešan."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr ""
"Aktiviranje korisničkog interfejsa za EAP identitet je neuspešno (greška "
"%u). "
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
msgstr "Unutrašnja autentifikacija"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
"Aktiviranje interaktivnog korisničkog interfejsa za EAP je neuspešno (greška"
" %u, %s, %s). "
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
"Aktiviranje interaktivnog korisničkog interfejsa za EAP je neuspešno (greška"
" %u). "
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr "Spoljna autentifikacija"
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr "Unutrašnja autentifikacija"
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr "Izaberite unutrašnji metod autentifikacije sa liste"
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
"Da li ste sigurni da želite da trajno uklonite %s provajdera iz "
"konfiguracije?"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr "Upozorenje"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr "Podešavanja provajdera"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr "Drugi EAP metodi..."
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr "Brisanje kredencijala neuspešno (greška %u)."
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr "<greška %u>"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr "EAP-TTLS metod"
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr "<greška>"
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr "<prazan ID>"
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr "&Zapamti"
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr "Označite ako želite da sačuvate kredencijale"
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr "<Vaša organizacija>"
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr "Podešavanja za EAP povezivanje"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr "EAP metodi"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr "Moduli podržani u određenim EAP metodima"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr "TTLS"
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr "Tunneled Transport Layer Security"

File diff suppressed because it is too large Load Diff

View File

@ -1,295 +1,481 @@
#
# Translators:
# Gokhan Eryol <gokhaneryol@gmail.com>, 2017
# Simon Rozman <simon@rozman.si>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: EAPMethods\n"
"POT-Creation-Date: 2016-09-28 13:27+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"POT-Creation-Date: 2020-04-17 14:55+0200\n"
"PO-Revision-Date: 2016-08-25 06:18+0000\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2020\n"
"Language-Team: Turkish (https://www.transifex.com/eduroam_devel/teams/11799/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.3\n"
"X-Poedit-Basepath: ../..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: lib/EAPBase_UI\n"
"X-Poedit-SearchPath-1: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-2: lib/PAP_UI\n"
"X-Poedit-SearchPath-3: lib/TLS_UI\n"
"X-Poedit-SearchPath-4: lib/TTLS_UI\n"
"X-Poedit-SearchPath-5: EAPMethods\n"
"X-Poedit-SearchPath-1: lib/EapHost_UI\n"
"X-Poedit-SearchPath-2: lib/GTC_UI\n"
"X-Poedit-SearchPath-3: lib/MSCHAPv2_UI\n"
"X-Poedit-SearchPath-4: lib/PAP_UI\n"
"X-Poedit-SearchPath-5: lib/TLS_UI\n"
"X-Poedit-SearchPath-6: lib/TTLS_UI\n"
"X-Poedit-SearchPath-7: EAPMethods\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: lib/EAPBase_UI/include/EAP_UI.h:295
#, c-format
msgid ""
"Are you sure you want to permanently remove %s provider from configuration?"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:295
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:381 lib/EAPBase_UI/res/wxEAP_UI.h:116
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:725
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758 lib/EAPBase_UI/res/wxEAP_UI.cpp:229
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:866 lib/TTLS_UI/src/Module.cpp:196
#: lib/TTLS_UI/src/Module.cpp:305
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:869 lib/TTLS_UI/src/Module.cpp:198
#: lib/TTLS_UI/src/Module.cpp:307
msgid "Writing credentials failed."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:897
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:924 lib/EAPBase_UI/include/EAP_UI.h:943
#: lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(none)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:928
#, c-format
msgid "(error %u)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:932
msgid "(error)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:943 lib/EAPBase_UI/include/EAP_UI.h:952
msgid "(blank ID)"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:992
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:993
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:1214
msgid "(Your Organization)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:37
msgid "+"
msgstr ""
msgstr "+"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:38
msgid "Adds new provider"
msgstr ""
msgstr "Yeni sağlayıcı ekler"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:42
msgid "-"
msgstr ""
msgstr "-"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:43
msgid "Removes selected provider"
msgstr ""
msgstr "Seçili sağlayıcıyı kaldırır"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:47
msgid "Advanced..."
msgstr ""
msgstr "Gelişmiş..."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:48
msgid "Opens dialog with provider settings"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:229 lib/EAPBase_UI/include/EAP_UI.h:581
#, c-format
msgid "%s User Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:240
msgid "Select the source where your credentials used to connect are stored."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:244
msgid "Use credentials from Credential &Manager:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:250
msgid "Use from Credential &Manager:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:245
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:251
msgid ""
"Select this option if you would like to use credentials stored in Windows "
"Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:253
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:258
msgid "Your present credentials stored in Windows Credential Manager"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:260
msgid "&Clear Credentials"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:268
msgid "Use from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:261
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:265 lib/EAPBase_UI/res/wxEAP_UI.cpp:292
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:266 lib/EAPBase_UI/res/wxEAP_UI.cpp:293
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Use credentials from &profile configuration:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:277
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:269
msgid ""
"Select this option if you would like to store credentials as a part of "
"profile configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:285
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:276
msgid "Profile configuration credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:335
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:289
msgid "&Clear Credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:290
msgid ""
"Click to clear your credentials from Credential Manager.\n"
"Note: You will be prompted to enter credentials when connecting."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:294
msgid "&Set Credentials..."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:295
msgid "Click here to set or modify your credentials"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:332
msgid "User ID and Password"
msgstr ""
msgstr "Kullanıcı Adı ve Parola"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:345
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:342
msgid "Please provide your user ID and password."
msgstr ""
msgstr "Lütfen kullanıcı adı ve parolanızı sağlayınız."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:355
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:352 lib/EAPBase_UI/res/wxEAP_UI.cpp:416
msgid "User ID:"
msgstr ""
msgstr "Kullanıcı Adı:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:360
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:357 lib/EAPBase_UI/res/wxEAP_UI.cpp:421
msgid "Enter your user name here (user@domain.org, DOMAIN\\User, etc.)"
msgstr ""
"Kullanıcı adınızı buraya giriniz (user@domain.org, ALANADI\\Kullanıcı, vb.)"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:364
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:361
msgid "Password:"
msgstr ""
msgstr "Parola:"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:369
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:366
msgid "Enter your password here"
msgstr ""
msgstr "Parolanızı buraya giriniz"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:400
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:396
msgid "User ID"
msgstr "Kullanıcı Adı"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:406
msgid "Please provide your user ID."
msgstr "Lütfen kullanıcı adınızı sağlayınız."
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:446
msgid "Your Organization"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:411
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:457
msgid ""
"Describe your organization to customize user prompts. When organization is "
"introduced, end-users find program messages easier to understand and act."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:418
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:464
msgid "Your organization &name:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:423
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ""
"Your organization name as it will appear on helpdesk contact notifications"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:427
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:473
msgid "(Keep it short, please)"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:437
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:483
msgid "Helpdesk contact &information:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:447
msgid "¶"
msgstr "¶"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:454
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:500
msgid "Your helpdesk website address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:458
msgid "*"
msgstr "*"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:465
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:511
msgid "Your helpdesk e-mail address"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:469
msgid ")"
msgstr ")"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:476
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
msgid "Your helpdesk phone number"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:504
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:550
msgid "Provider Unique Identifier"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:515
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:561
msgid ""
"Assign your organization a unique ID to allow sharing the same credential "
"set across different network profiles."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:522
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
msgid "&Namespace:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:RFC4282:realm"
msgstr "urn:RFC4282:realm"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:526
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:572
msgid "urn:uuid"
msgstr "urn:uuid"
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:538
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:584
msgid "Provider unique &identifier:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:543
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
msgid "Your organization ID to assign same credentials from other profiles"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:568
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:614
msgid "Configuration Lock"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:579
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:625
msgid ""
"Your configuration can be locked to prevent accidental modification by end-"
"users. Users will only be allowed to enter credentials."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:586
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:632
msgid ""
"&Lock this configuration and prevent any further modification via user "
"interface."
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:589
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:635
msgid "(Warning: Once locked, you can not revert using this dialog!)"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:97
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:700
msgid "Identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:711
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:718
msgid "&True identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:719
msgid "Use my true user name"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:723
msgid "Use &empty identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:724
msgid "Omit my user name and use @mydomain.org only"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:731
msgid "&Custom identity:"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:732
msgid "Specify custom identity"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.cpp:737
msgid "Custom identity to use"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:66
msgid "EAP Connection Configuration"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:329
msgid "EAP Identity Provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:103
#, c-format
msgid "%s Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:122 lib/EAPBase_UI/include/EAP_UI.h:355
#: lib/EAPBase_UI/include/EAP_UI.h:365 lib/EAPBase_UI/res/wxEAP_UI.h:119
msgid "EAP Credentials"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:165
#: lib/EAPBase_UI/src/EAP_UI.cpp:139
#, c-format
msgid "For additional help and instructions, please contact %s at:"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:166
#: lib/EAPBase_UI/src/EAP_UI.cpp:140
msgid "your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:185
#: lib/EAPBase_UI/src/EAP_UI.cpp:159
msgid "Open the default web browser"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:196
#: lib/EAPBase_UI/src/EAP_UI.cpp:170
msgid "Open your e-mail program"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:207
#: lib/EAPBase_UI/src/EAP_UI.cpp:181
msgid "Dial the phone number"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
#: lib/EAPBase_UI/src/EAP_UI.cpp:203
#, c-format
msgid ""
"%s has pre-set parts of this configuration. Those parts are locked to "
"prevent accidental modification."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
#: lib/EAPBase_UI/src/EAP_UI.cpp:204
msgid "Your provider"
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:249
#: lib/EAPBase_UI/src/EAP_UI.cpp:225
msgid "Previous attempt to connect reported invalid credentials."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#: lib/EAPBase_UI/src/EAP_UI.cpp:226
msgid "Previous attempt to connect reported your credentials expired."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
#: lib/EAPBase_UI/src/EAP_UI.cpp:227
msgid ""
"Previous attempt to connect reported your credentials are being changed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:252
#: lib/EAPBase_UI/src/EAP_UI.cpp:228
msgid "Previous attempt to connect failed."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:253
#: lib/EAPBase_UI/src/EAP_UI.cpp:229
msgid "Please, make sure your credentials are correct, or try again later."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:250
#, c-format
msgid ""
"The %s version installed on this computer logs credentials in visible and "
"easy to read way."
msgstr ""
#: lib/EAPBase_UI/src/EAP_UI.cpp:251
msgid "Please, reconsider necessity to enter your credentials."
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:17
msgid "Inner EAP Method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:28
msgid "Select and configure inner EAP method"
msgstr ""
#: lib/EapHost_UI/res/wxEapHost_UI.cpp:40
msgid "&Settings"
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:59
#, c-format
msgid "Enumerating EAP methods failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:61
#, c-format
msgid "Enumerating EAP methods failed (error %u)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:136
#, c-format
msgid "Configuring EAP method failed (error %u, %s, %s)."
msgstr ""
#: lib/EapHost_UI/src/EapHost_UI.cpp:138
#, c-format
msgid "Configuring EAP method failed (error %u)."
msgstr ""
#: lib/GTC_UI/include/GTC_UI.h:114 lib/GTC_UI/res/wxGTC_UI.cpp:16
msgid "GTC Challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:26
msgid "Please provide your response."
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:38
msgid "Server challenge"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:43
msgid "Enter your response here"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:70
msgid "EAP-GTC authentication &mode:"
msgstr ""
#: lib/GTC_UI/res/wxGTC_UI.cpp:75
msgid "Select EAP-GTC authentication mode from the list"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:39
msgid "Challenge/Response"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:41
msgid "Password"
msgstr ""
#: lib/GTC_UI/src/GTC_UI.cpp:119
#, c-format
msgid "%s Challenge"
msgstr ""
#: lib/MSCHAPv2_UI/src/MSCHAPv2_UI.cpp:33
msgid "MSCHAPv2 User ID and Password"
msgstr ""
@ -303,9 +489,7 @@ msgid "Server Trust"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:28
msgid ""
"Describe the servers you trust to prevent credential interception in case of"
" man-in-the-middle attacks."
msgid "Describe the servers you trust to prevent man-in-the-middle attacks."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:35
@ -339,228 +523,155 @@ msgstr ""
msgid "&Remove CA"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:59
#: lib/TLS_UI/res/wxTLS_UI.cpp:58
msgid "Removes selected certificate authorities from the list"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:72
#: lib/TLS_UI/res/wxTLS_UI.cpp:71
msgid "Acceptable server &names:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:77
#: lib/TLS_UI/res/wxTLS_UI.cpp:76
msgid ""
"A semicolon delimited list of acceptable server FQDN names; blank to skip "
"name check; Unicode characters allowed"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:81
#: lib/TLS_UI/res/wxTLS_UI.cpp:80
msgid "(Example: foo.bar.com;server2.bar.com)"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:119 lib/TLS_UI/src/TLS_UI.cpp:571
#: lib/TLS_UI/res/wxTLS_UI.cpp:118 lib/TLS_UI/src/TLS_UI.cpp:400
msgid "User Certificate"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:129
#: lib/TLS_UI/res/wxTLS_UI.cpp:128
msgid "Please select your &certificate to use for authentication."
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:136
#: lib/TLS_UI/res/wxTLS_UI.cpp:135
msgid "Client certificate to use for authentication"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:143
#: lib/TLS_UI/res/wxTLS_UI.cpp:142
msgid "Custom &identity:"
msgstr ""
#: lib/TLS_UI/res/wxTLS_UI.cpp:148
#: lib/TLS_UI/res/wxTLS_UI.cpp:147
msgid ""
"Your identity (username@domain) to override one from certificate; or blank "
"to use one provided in certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
#, c-format
msgid "Invalid character in host name found: %c"
msgid "No certificate selected"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:118
msgid "Validation conflict"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:327 lib/EAPBase_UI/include/EAP_UI.h:769
#: lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<empty>"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:500
#: lib/TLS_UI/src/TLS_UI.cpp:327
msgid "Add Certificate"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:501
#: lib/TLS_UI/src/TLS_UI.cpp:328
msgid "Certificate Files (*.cer;*.crt;*.der;*.p7b;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:502
#: lib/TLS_UI/src/TLS_UI.cpp:329
msgid "X.509 Certificate Files (*.cer;*.crt;*.der;*.pem)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:503
#: lib/TLS_UI/src/TLS_UI.cpp:330
msgid "PKCS #7 Certificate Files (*.p7b)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:504
#: lib/TLS_UI/src/TLS_UI.cpp:331
msgid "All Files (*.*)"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
#, c-format
msgid "Invalid or unsupported certificate file %s"
msgstr ""
#: lib/TLS_UI/src/TLS_UI.cpp:520
#: lib/TLS_UI/src/TLS_UI.cpp:345
msgid "Error"
msgstr ""
msgstr "Hata"
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:17
msgid "Outer Identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:28
msgid "Select the user ID supplicant introduces itself as to authenticator:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:35
msgid "&True identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:36
msgid "Use my true user name"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:40
msgid "Use &empty outer identity (RFC 4822)"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:41
msgid "Ommit my user name and use @mydomain.org only"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:48
msgid "&Custom outer identity:"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:49
msgid "Specify custom outer identity"
msgstr ""
#: lib/TTLS_UI/res/wxTTLS_UI.cpp:54
msgid "Custom outer identity to use"
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:274 lib/TTLS_UI/src/Module.cpp:284
#: lib/EAPBase_UI/include/EAP_UI.h:696
#: lib/TTLS_UI/src/Module.cpp:249
#, c-format
msgid "Error writing credentials to Credential Manager: %hs (error %u)"
msgid "Invoking EAP identity UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/Module.cpp:276 lib/TTLS_UI/src/Module.cpp:286
#: lib/EAPBase_UI/include/EAP_UI.h:699
msgid "Writing credentials failed."
#: lib/TTLS_UI/src/Module.cpp:252
#, c-format
msgid "Invoking EAP identity UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:36 lib/TTLS_UI/src/TTLS_UI.cpp:181
msgid "Inner Authentication"
#: lib/TTLS_UI/src/Module.cpp:376
#, c-format
msgid "Invoking EAP interactive UI failed (error %u, %s, %s)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:61 lib/TTLS_UI/src/TTLS_UI.cpp:196
#: lib/TTLS_UI/src/Module.cpp:379
#, c-format
msgid "Invoking EAP interactive UI failed (error %u)."
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:37
msgid "Outer Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:187
#: lib/TTLS_UI/src/TTLS_UI.cpp:50
msgid "Inner Authentication"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:56
msgid "Select inner authentication method from the list"
msgstr ""
#: lib/TTLS_UI/src/TTLS_UI.cpp:189
#: lib/TTLS_UI/src/TTLS_UI.cpp:127
msgid "PAP"
msgstr ""
msgstr "PAP"
#: lib/TTLS_UI/src/TTLS_UI.cpp:191
#: lib/TTLS_UI/src/TTLS_UI.cpp:129
msgid "MSCHAPv2"
msgstr "MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:131
msgid "EAP-MSCHAPv2"
msgstr "EAP-MSCHAPv2"
#: lib/TTLS_UI/src/TTLS_UI.cpp:133
msgid "EAP-GTC"
msgstr "EAP-GTC"
#: lib/TTLS_UI/src/TTLS_UI.cpp:136
msgid "Other EAP methods..."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
#, c-format
msgid ""
"Are you sure you want to permanently remove %ls provider from configuration?"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS"
msgstr "EAP-TTLS"
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild.EAP-TTLS/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP-TTLS Method"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:292
msgid "Warning"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:552
msgid "Provider Settings"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:717
#, c-format
msgid "Deleting credentials failed (error %u)."
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:754
#, c-format
msgid "<error %u>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:758
msgid "<error>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:769 lib/EAPBase_UI/include/EAP_UI.h:778
msgid "<blank ID>"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:820
msgid "&Remember"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:821
msgid "Check if you would like to save credentials"
msgstr ""
#: lib/EAPBase_UI/include/EAP_UI.h:964
msgid "<Your Organization>"
msgstr ""
#: lib/EAPBase_UI/res/wxEAP_UI.h:69
msgid "EAP Connection Configuration"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "EAP Methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:4
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Modules to support individual EAP methods"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "TTLS"
msgstr ""
#: EAPMethods/MSIBuild/en_US.Win32.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.Win32.Release.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Debug.Feature-2.idtx:5
#: EAPMethods/MSIBuild/en_US.x64.Release.Feature-2.idtx:5
msgid "Tunneled Transport Layer Security"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -1,982 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include <StdAfx.h>
using namespace std;
using namespace winstd;
#pragma comment(lib, "Ws2_32.lib")
#if EAPMETHOD_TYPE==21
#define _EAPMETHOD_PEER eap::peer_ttls
#else
#error Unknown EAP Method type.
#endif
_EAPMETHOD_PEER g_peer;
///
/// DLL main entry point
///
/// \sa [DllMain entry point](https://msdn.microsoft.com/en-us/library/windows/desktop/ms682583.aspx)
///
BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD fdwReason, _In_ LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
if (fdwReason == DLL_PROCESS_ATTACH) {
#ifdef _DEBUG
//Sleep(10000);
#endif
g_peer.m_instance = hinstDLL;
} else if (fdwReason == DLL_PROCESS_DETACH)
assert(!_CrtDumpMemoryLeaks());
return TRUE;
}
///
/// Releases all memory associated with an opaque user interface context data buffer.
///
/// \sa [EapPeerFreeMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363606.aspx)
///
VOID WINAPI EapPeerFreeMemory(_In_ void *pUIContextData)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (pUIContextData)
g_peer.free_memory((BYTE*)pUIContextData);
}
///
/// Releases error-specific memory allocated by the EAP peer method.
///
/// \sa [EapPeerFreeErrorMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363605.aspx)
///
VOID WINAPI EapPeerFreeErrorMemory(_In_ EAP_ERROR *ppEapError)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (ppEapError)
g_peer.free_error_memory(ppEapError);
}
///
/// Obtains a set of function pointers for an implementation of the EAP peer method currently loaded on the EapHost service.
///
/// \sa [EapPeerGetInfo function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363608.aspx)
///
DWORD WINAPI EapPeerGetInfo(_In_ EAP_TYPE* pEapType, _Out_ EAP_PEER_METHOD_ROUTINES* pEapPeerMethodRoutines, _Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pEapType)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapType is NULL.")));
else if (pEapType->type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)pEapType->type, (int)EAPMETHOD_TYPE).c_str()));
else if (!pEapPeerMethodRoutines)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapPeerMethodRoutines is NULL.")));
else {
pEapPeerMethodRoutines->dwVersion = PRODUCT_VERSION;
pEapPeerMethodRoutines->pEapType = NULL;
pEapPeerMethodRoutines->EapPeerInitialize = EapPeerInitialize;
pEapPeerMethodRoutines->EapPeerShutdown = EapPeerShutdown;
pEapPeerMethodRoutines->EapPeerBeginSession = EapPeerBeginSession;
pEapPeerMethodRoutines->EapPeerEndSession = EapPeerEndSession;
pEapPeerMethodRoutines->EapPeerSetCredentials = NULL; // Always NULL unless we want to use generic credential UI
pEapPeerMethodRoutines->EapPeerGetIdentity = EapPeerGetIdentity;
pEapPeerMethodRoutines->EapPeerProcessRequestPacket = EapPeerProcessRequestPacket;
pEapPeerMethodRoutines->EapPeerGetResponsePacket = EapPeerGetResponsePacket;
pEapPeerMethodRoutines->EapPeerGetResult = EapPeerGetResult;
pEapPeerMethodRoutines->EapPeerGetUIContext = EapPeerGetUIContext;
pEapPeerMethodRoutines->EapPeerSetUIContext = EapPeerSetUIContext;
pEapPeerMethodRoutines->EapPeerGetResponseAttributes = EapPeerGetResponseAttributes;
pEapPeerMethodRoutines->EapPeerSetResponseAttributes = EapPeerSetResponseAttributes;
}
return dwResult;
}
#pragma warning(push)
#pragma warning(disable: 4702) // Compiler is smart enough to find out the initialize() method is empty => never throws an exception.
///
/// Initializes an EAP peer method for EapHost.
///
/// \sa [EapPeerGetInfo function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363613.aspx)
///
DWORD APIENTRY EapPeerInitialize(_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
try {
g_peer.initialize();
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
#pragma warning(pop)
#pragma warning(push)
#pragma warning(disable: 4702) // Compiler is smart enough to find out the shutdown() method is empty => never throws an exception.
///
/// Shuts down the EAP method and prepares to unload its corresponding DLL.
///
/// \sa [EapPeerShutdown function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363627.aspx)
///
DWORD APIENTRY EapPeerShutdown(_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
try {
g_peer.shutdown();
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
return dwResult;
}
#pragma warning(pop)
///
/// Returns the user data and user identity after being called by EapHost.
///
/// \sa [EapPeerGetIdentity function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363607.aspx)
///
DWORD APIENTRY EapPeerGetIdentity(
_In_ DWORD dwFlags,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ DWORD dwUserDataSize,
_In_count_(dwUserDataSize) const BYTE *pUserData,
_In_ HANDLE hTokenImpersonateUser,
_Out_ BOOL *pfInvokeUI,
_Out_ DWORD *pdwUserDataOutSize,
_Out_ BYTE **ppUserDataOut,
_Out_ WCHAR **ppwszIdentity,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pUserData && dwUserDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUserData is NULL.")));
else if (!pfInvokeUI)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pfInvokeUI is NULL.")));
else if (!pdwUserDataOutSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwUserDataOutSize is NULL.")));
else if (!ppUserDataOut)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppUserDataOut is NULL.")));
else if (!ppwszIdentity)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppwszIdentity is NULL.")));
else {
try {
g_peer.get_identity(dwFlags, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, ppUserDataOut, pdwUserDataOutSize, hTokenImpersonateUser, pfInvokeUI, ppwszIdentity);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Starts an EAP authentication session on the peer EapHost using the EAP method.
///
/// \sa [EapPeerBeginSession function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363600.aspx)
///
DWORD APIENTRY EapPeerBeginSession(
_In_ DWORD dwFlags,
_In_ const EapAttributes *pAttributeArray,
_In_ HANDLE hTokenImpersonateUser,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) /*const*/ BYTE *pConnectionData,
_In_ DWORD dwUserDataSize,
_In_count_(dwUserDataSize) /*const*/ BYTE *pUserData,
_In_ DWORD dwMaxSendPacketSize,
_Out_ EAP_SESSION_HANDLE *phSession,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pUserData && dwUserDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUserData is NULL.")));
else if (!phSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" phSession is NULL.")));
else {
try {
*phSession = g_peer.begin_session(dwFlags, pAttributeArray, hTokenImpersonateUser, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, dwMaxSendPacketSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Ends an EAP authentication session for the EAP method.
///
/// \sa [EapPeerEndSession function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363604.aspx)
///
DWORD APIENTRY EapPeerEndSession(
_In_ EAP_SESSION_HANDLE hSession,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else {
try {
g_peer.end_session(hSession);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Processes a packet received by EapHost from a supplicant.
///
/// \sa [EapPeerProcessRequestPacket function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363621.aspx)
///
DWORD APIENTRY EapPeerProcessRequestPacket(
_In_ EAP_SESSION_HANDLE hSession,
_In_ DWORD dwReceivedPacketSize,
_In_bytecount_(dwReceivedPacketSize) /*const*/ EapPacket *pReceivedPacket,
_Out_ EapPeerMethodOutput *pEapOutput,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pReceivedPacket || dwReceivedPacketSize < 6)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pReceivedPacket is NULL or too short.")));
else if (pReceivedPacket->Data[0] != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, wstring_printf(_T(__FUNCTION__) _T(" Packet EAP type (%d) does not match the supported EAP type (%d)."), (int)pReceivedPacket->Data[0], (int)EAPMETHOD_TYPE).c_str()));
else if (!pEapOutput)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapOutput is NULL.")));
else {
try {
g_peer.process_request_packet(hSession, pReceivedPacket, dwReceivedPacketSize, pEapOutput);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Obtains a response packet from the EAP method.
///
/// \sa [EapPeerGetResponsePacket function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363610.aspx)
///
DWORD APIENTRY EapPeerGetResponsePacket(
_In_ EAP_SESSION_HANDLE hSession,
_Inout_ DWORD *pdwSendPacketSize,
_Inout_bytecap_(*dwSendPacketSize) EapPacket *pSendPacket,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pdwSendPacketSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwSendPacketSize is NULL.")));
else if (!pSendPacket && *pdwSendPacketSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pSendPacket is NULL.")));
else {
try {
g_peer.get_response_packet(hSession, pSendPacket, pdwSendPacketSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Obtains the result of an authentication session from the EAP method.
///
/// \sa [EapPeerGetResult function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363611.aspx)
///
DWORD APIENTRY EapPeerGetResult(
_In_ EAP_SESSION_HANDLE hSession,
_In_ EapPeerMethodResultReason reason,
_Out_ EapPeerMethodResult *pResult,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pResult)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pResult is NULL.")));
else {
try {
g_peer.get_result(hSession, reason, pResult);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Obtains the user interface context from the EAP method.
///
/// \note This function is always followed by the `EapPeerInvokeInteractiveUI()` function, which is followed by the `EapPeerSetUIContext()` function.
///
/// \sa [EapPeerGetUIContext function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363612.aspx)
///
DWORD APIENTRY EapPeerGetUIContext(
_In_ EAP_SESSION_HANDLE hSession,
_Out_ DWORD *pdwUIContextDataSize,
_Out_ BYTE **ppUIContextData,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pdwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwUIContextDataSize is NULL.")));
else if (!ppUIContextData)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppUIContextData is NULL.")));
else {
try {
g_peer.get_ui_context(hSession, ppUIContextData, pdwUIContextDataSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Provides a user interface context to the EAP method.
///
/// \note This function is called after the UI has been raised through the `EapPeerGetUIContext()` function.
///
/// \sa [EapPeerSetUIContext function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363626.aspx)
///
DWORD APIENTRY EapPeerSetUIContext(
_In_ EAP_SESSION_HANDLE hSession,
_In_ DWORD dwUIContextDataSize,
_In_count_(dwUIContextDataSize) const BYTE *pUIContextData,
_Out_ EapPeerMethodOutput *pEapOutput,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pUIContextData && dwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUIContextData is NULL.")));
else if (!pEapOutput)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapOutput is NULL.")));
else {
try {
g_peer.set_ui_context(hSession, pUIContextData, dwUIContextDataSize, pEapOutput);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Obtains an array of EAP response attributes from the EAP method.
///
/// \sa [EapPeerGetResponseAttributes function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363609.aspx)
///
DWORD APIENTRY EapPeerGetResponseAttributes(
_In_ EAP_SESSION_HANDLE hSession,
_Out_ EapAttributes *pAttribs,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pAttribs)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pAttribs is NULL.")));
else {
try {
g_peer.get_response_attributes(hSession, pAttribs);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Provides an updated array of EAP response attributes to the EAP method.
///
/// \sa [EapPeerSetResponseAttributes function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363625.aspx)
///
DWORD APIENTRY EapPeerSetResponseAttributes(
_In_ EAP_SESSION_HANDLE hSession,
_In_ /*const*/ EapAttributes *pAttribs,
_Out_ EapPeerMethodOutput *pEapOutput,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!hSession)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" hSession is NULL.")));
else if (!pEapOutput)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapOutput is NULL.")));
else {
try {
g_peer.set_response_attributes(hSession, pAttribs, pEapOutput);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Defines the implementation of an EAP method-specific function that retrieves the properties of an EAP method given the connection and user data.
///
/// \sa [EapPeerGetMethodProperties function](https://msdn.microsoft.com/en-us/library/windows/desktop/hh706636.aspx)
///
DWORD WINAPI EapPeerGetMethodProperties(
_In_ DWORD dwVersion,
_In_ DWORD dwFlags,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_ HANDLE hUserImpersonationToken,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ DWORD dwUserDataSize,
_In_count_(dwUserDataSize) const BYTE *pUserData,
_Out_ EAP_METHOD_PROPERTY_ARRAY *pMethodPropertyArray,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pUserData && dwUserDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUserData is NULL.")));
else if (!pMethodPropertyArray)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pMethodPropertyArray is NULL.")));
else {
try {
g_peer.get_method_properties(dwVersion, dwFlags, hUserImpersonationToken, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, pMethodPropertyArray);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Converts XML into the configuration BLOB. The XML based credentials can come from group policy or from a system administrator.
///
/// \sa [EapPeerCredentialsXml2Blob function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363603.aspx)
///
DWORD WINAPI EapPeerCredentialsXml2Blob(
_In_ DWORD dwFlags,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_ IXMLDOMDocument2 *pCredentialsDoc,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ DWORD dwConnectionDataSize,
_Out_ BYTE **ppCredentialsOut,
_Out_ DWORD *pdwCredentialsOutSize,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pCredentialsDoc)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pCredentialsDoc is NULL.")));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!ppCredentialsOut)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppCredentialsOut is NULL.")));
else if (!pdwCredentialsOutSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwCredentialsOutSize is NULL.")));
else {
// <Credentials>
com_obj<IXMLDOMNode> pXmlElCredentials;
if (FAILED(eapxml::select_node(pCredentialsDoc, bstr(L"//EapHostUserCredentials/Credentials"), pXmlElCredentials))) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_FOUND, _T(__FUNCTION__) _T(" Error selecting <EapHostUserCredentials><Credentials> element.")));
return dwResult;
}
// Load credentials.
pCredentialsDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\""));
try {
g_peer.credentials_xml2blob(dwFlags, pXmlElCredentials, pConnectionData, dwConnectionDataSize, ppCredentialsOut, pdwCredentialsOutSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Defines the implementation of an EAP method-specific function that obtains the EAP Single-Sign-On (SSO) credential input fields for an EAP method.
///
/// \sa [EapPeerQueryCredentialInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363622.aspx)
///
DWORD WINAPI EapPeerQueryCredentialInputFields(
_In_ HANDLE hUserImpersonationToken,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_ DWORD dwFlags,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_Out_ EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldsArray,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pEapConfigInputFieldsArray)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapConfigInputFieldsArray is NULL.")));
else {
try {
g_peer.query_credential_input_fields(hUserImpersonationToken, dwFlags, dwConnectionDataSize, pConnectionData, pEapConfigInputFieldsArray);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Defines the implementation of an EAP method function that obtains the user BLOB data provided in an interactive Single-Sign-On (SSO) UI raised on the supplicant.
///
/// \sa [EapPeerQueryUserBlobFromCredentialInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204697.aspx)
///
DWORD WINAPI EapPeerQueryUserBlobFromCredentialInputFields(
_In_ HANDLE hUserImpersonationToken,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_ DWORD dwFlags,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ const EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray,
_Inout_ DWORD *pdwUsersBlobSize,
_Inout_ BYTE **ppUserBlob,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pEapConfigInputFieldArray)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapConfigInputFieldArray is NULL.")));
else if (!pdwUsersBlobSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwUsersBlobSize is NULL.")));
else if (!ppUserBlob)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppUserBlob is NULL.")));
else {
try {
g_peer.query_user_blob_from_credential_input_fields(hUserImpersonationToken, dwFlags, dwConnectionDataSize, pConnectionData, pEapConfigInputFieldArray, pdwUsersBlobSize, ppUserBlob);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Defines the implementation of an EAP method API that provides the input fields for interactive UI components to be raised on the supplicant.
///
/// \sa [EapPeerQueryInteractiveUIInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204695.aspx)
///
DWORD WINAPI EapPeerQueryInteractiveUIInputFields(
_In_ DWORD dwVersion,
_In_ DWORD dwFlags,
_In_ DWORD dwUIContextDataSize,
_In_count_(dwUIContextDataSize) const BYTE *pUIContextData,
_Out_ EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData,
_Out_ EAP_ERROR **ppEapError,
_Inout_ LPVOID *ppvReserved)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pUIContextData && dwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUIContextData is NULL.")));
else if (!pUIContextData && dwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUIContextData is NULL.")));
else if (!pEapInteractiveUIData)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapInteractiveUIData is NULL.")));
else {
UNREFERENCED_PARAMETER(ppvReserved);
try {
g_peer.query_interactive_ui_input_fields(dwVersion, dwFlags, dwUIContextDataSize, pUIContextData, pEapInteractiveUIData);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Converts user information into a user BLOB that can be consumed by EapHost run-time functions.
///
/// \sa [EapPeerQueryUIBlobFromInteractiveUIInputFields function](https://msdn.microsoft.com/en-us/library/windows/desktop/bb204696.aspx)
///
DWORD WINAPI EapPeerQueryUIBlobFromInteractiveUIInputFields(
_In_ DWORD dwVersion,
_In_ DWORD dwFlags,
_In_ DWORD dwUIContextDataSize,
_In_count_(dwUIContextDataSize) const BYTE *pUIContextData,
_In_ const EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData,
_Out_ DWORD *pdwDataFromInteractiveUISize,
_Out_ BYTE **ppDataFromInteractiveUI,
_Out_ EAP_ERROR **ppEapError,
_Inout_ LPVOID *ppvReserved)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pUIContextData && dwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapConfigInputFieldArray is NULL.")));
else if (!pEapInteractiveUIData)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapInteractiveUIData is NULL.")));
else if (!pdwDataFromInteractiveUISize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwDataFromInteractiveUISize is NULL.")));
else if (!ppDataFromInteractiveUI)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppDataFromInteractiveUI is NULL.")));
else {
UNREFERENCED_PARAMETER(ppvReserved);
try {
g_peer.query_ui_blob_from_interactive_ui_input_fields(dwVersion, dwFlags, dwUIContextDataSize, pUIContextData, pEapInteractiveUIData, pdwDataFromInteractiveUISize, ppDataFromInteractiveUI);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}

View File

@ -1,413 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include <StdAfx.h>
#pragma comment(lib, "msxml6.lib")
using namespace std;
using namespace winstd;
#if EAPMETHOD_TYPE==21
#define _EAPMETHOD_PEER_UI eap::peer_ttls_ui
#else
#error Unknown EAP Method type.
#endif
HANDLE g_act_ctx = NULL;
_EAPMETHOD_PEER_UI g_peer;
///
/// DLL main entry point
///
/// \sa [DllMain entry point](https://msdn.microsoft.com/en-us/library/windows/desktop/ms682583.aspx)
///
BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD fdwReason, _In_ LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
if (fdwReason == DLL_PROCESS_ATTACH) {
#ifdef _DEBUG
//Sleep(10000);
#endif
g_peer.m_instance = hinstDLL;
// Save current activation context, as proper activation context is set at this time only (LoadLibrary() call).
GetCurrentActCtx(&g_act_ctx);
} else if (fdwReason == DLL_PROCESS_DETACH) {
if (g_act_ctx)
ReleaseActCtx(g_act_ctx);
// wxWidgets library has some global objects allocating data on heap in constructors,
// causing false-positive memory leak reports.
//assert(!_CrtDumpMemoryLeaks());
}
return TRUE;
}
///
/// Releases all memory associated with an opaque user interface context data buffer.
///
/// \sa [EapPeerFreeMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363606.aspx)
///
VOID WINAPI EapPeerFreeMemory(_In_ void *pUIContextData)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (pUIContextData)
g_peer.free_memory((BYTE*)pUIContextData);
}
///
/// Releases error-specific memory allocated by the EAP peer method.
///
/// \sa [EapPeerFreeErrorMemory function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363605.aspx)
///
VOID WINAPI EapPeerFreeErrorMemory(_In_ EAP_ERROR *ppEapError)
{
event_fn_auto event_auto(g_peer.get_event_fn_auto(__FUNCTION__));
if (ppEapError)
g_peer.free_error_memory(ppEapError);
}
///
/// Converts XML into the configuration BLOB.
///
/// \sa [EapPeerConfigXml2Blob function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363602.aspx)
///
DWORD WINAPI EapPeerConfigXml2Blob(
_In_ DWORD dwFlags,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_ IXMLDOMDocument2 *pConfigDoc,
_Out_ BYTE **pConnectionDataOut,
_Out_ DWORD *pdwConnectionDataOutSize,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pConfigDoc)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConfigDoc is NULL.")));
else if (!pConnectionDataOut)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionDataOut is NULL.")));
else if (!pdwConnectionDataOutSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwConnectionDataOutSize is NULL.")));
else {
// Configure XML selection namespaces used.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\" xmlns:eaphostconfig=\"http://www.microsoft.com/provisioning/EapHostConfig\""));
// <Config>
com_obj<IXMLDOMElement> pXmlElConfig;
if (FAILED(eapxml::select_element(pConfigDoc, bstr(L"//eaphostconfig:Config"), pXmlElConfig))) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" Error reading <Config> element.")));
return dwResult;
}
// Load configuration.
try {
g_peer.config_xml2blob(dwFlags, pXmlElConfig, pConnectionDataOut, pdwConnectionDataOutSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Converts the configuration BLOB to XML.
///
/// The configuration BLOB is returned in the ppConnectionDataOut parameter of the EapPeerInvokeConfigUI function.
///
/// \sa [EapPeerConfigBlob2Xml function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363601.aspx)
///
DWORD WINAPI EapPeerConfigBlob2Xml(
_In_ DWORD dwFlags,
_In_ EAP_METHOD_TYPE eapMethodType,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ DWORD dwConnectionDataSize,
_Out_ IXMLDOMDocument2 **ppConfigDoc,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (eapMethodType.eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)eapMethodType.eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (eapMethodType.dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)eapMethodType.dwAuthorId, (int)67532).c_str()));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!ppConfigDoc)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppConfigDoc is NULL.")));
else {
HRESULT hr;
// Create configuration XML document.
com_obj<IXMLDOMDocument2> pConfigDoc;
if (FAILED(hr = pConfigDoc.create(CLSID_DOMDocument60, NULL, CLSCTX_INPROC_SERVER))) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = HRESULT_CODE(hr), _T(__FUNCTION__) _T(" Error creating XML document.")));
return dwResult;
}
pConfigDoc->put_async(VARIANT_FALSE);
// Load empty XML configuration.
VARIANT_BOOL isSuccess = VARIANT_FALSE;
if (FAILED((hr = pConfigDoc->loadXML(L"<Config xmlns=\"http://www.microsoft.com/provisioning/EapHostConfig\"></Config>", &isSuccess)))) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = HRESULT_CODE(hr), _T(__FUNCTION__) _T(" Error loading XML document template.")));
return dwResult;
}
if (!isSuccess) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_XML_PARSE_ERROR, _T(__FUNCTION__) _T(" Loading XML template failed.")));
return dwResult;
}
// Configure XML selection namespaces used.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\" xmlns:eaphostconfig=\"http://www.microsoft.com/provisioning/EapHostConfig\""));
// Select <Config> node.
com_obj<IXMLDOMNode> pXmlElConfig;
if (FAILED(eapxml::select_node(pConfigDoc, bstr(L"eaphostconfig:Config"), pXmlElConfig))) {
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_FOUND, _T(__FUNCTION__) _T(" Error selecting <Config> element.")));
return dwResult;
}
// Save configuration.
pConfigDoc->setProperty(bstr(L"SelectionNamespaces"), variant(L"xmlns:eap-metadata=\"urn:ietf:params:xml:ns:yang:ietf-eap-metadata\""));
try {
g_peer.config_blob2xml(dwFlags, pConnectionData, dwConnectionDataSize, pConfigDoc, pXmlElConfig);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
return dwResult = (*ppEapError)->dwWinError;
} catch (...) {
return dwResult = ERROR_INVALID_DATA;
}
*ppConfigDoc = pConfigDoc.detach();
}
return dwResult;
}
///
/// Raises the EAP method's specific connection configuration user interface dialog on the client.
///
/// \sa [EapPeerInvokeConfigUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363614.aspx)
///
DWORD WINAPI EapPeerInvokeConfigUI(
_In_ const EAP_METHOD_TYPE *pEapType,
_In_ HWND hwndParent,
_In_ DWORD dwFlags,
_In_ DWORD dwConnectionDataInSize,
_In_count_(dwConnectionDataInSize) const BYTE *pConnectionDataIn,
_Out_ DWORD *pdwConnectionDataOutSize,
_Out_ BYTE **ppConnectionDataOut,
_Out_ EAP_ERROR **ppEapError)
{
UNREFERENCED_PARAMETER(dwFlags);
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pEapType)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapType is NULL.")));
else if (pEapType->eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)pEapType->eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (pEapType->dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)pEapType->dwAuthorId, (int)67532).c_str()));
else if (!pConnectionDataIn && dwConnectionDataInSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionDataIn is NULL.")));
else if (!pdwConnectionDataOutSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwConnectionDataOutSize is NULL.")));
else if (!ppConnectionDataOut)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppConnectionDataOut is NULL.")));
else {
try {
g_peer.invoke_config_ui(hwndParent, pConnectionDataIn, dwConnectionDataInSize, ppConnectionDataOut, pdwConnectionDataOutSize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Raises a custom interactive user interface dialog to obtain user identity information for the EAP method on the client.
///
/// \sa [EapPeerInvokeIdentityUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363615.aspx)
///
DWORD WINAPI EapPeerInvokeIdentityUI(
_In_ const EAP_METHOD_TYPE *pEapType,
_In_ DWORD dwFlags,
_In_ HWND hwndParent,
_In_ DWORD dwConnectionDataSize,
_In_count_(dwConnectionDataSize) const BYTE *pConnectionData,
_In_ DWORD dwUserDataSize,
_In_count_(dwUserDataSize) const BYTE *pUserData,
_Out_ DWORD *pdwUserDataOutSize,
_Out_ BYTE **ppUserDataOut,
_Out_ LPWSTR *ppwszIdentity,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pEapType)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapType is NULL.")));
else if (pEapType->eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)pEapType->eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (pEapType->dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)pEapType->dwAuthorId, (int)67532).c_str()));
else if (!pConnectionData && dwConnectionDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pConnectionData is NULL.")));
else if (!pUserData && dwUserDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUserData is NULL.")));
else if (!pdwUserDataOutSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwUserDataOutSize is NULL.")));
else if (!ppUserDataOut)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppUserDataOut is NULL.")));
else if (!ppwszIdentity)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppwszIdentity is NULL.")));
else {
try {
g_peer.invoke_identity_ui(hwndParent, dwFlags, pConnectionData, dwConnectionDataSize, pUserData, dwUserDataSize, ppUserDataOut, pdwUserDataOutSize, ppwszIdentity);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}
///
/// Raises a custom interactive user interface dialog for the EAP method on the client.
///
/// \sa [EapPeerInvokeInteractiveUI function](https://msdn.microsoft.com/en-us/library/windows/desktop/aa363616.aspx)
///
DWORD WINAPI EapPeerInvokeInteractiveUI(
_In_ const EAP_METHOD_TYPE *pEapType,
_In_ HWND hwndParent,
_In_ DWORD dwUIContextDataSize,
_In_count_(dwUIContextDataSize) const BYTE *pUIContextData,
_Out_ DWORD *pdwDataFromInteractiveUISize,
_Out_ BYTE **ppDataFromInteractiveUI,
_Out_ EAP_ERROR **ppEapError)
{
DWORD dwResult = ERROR_SUCCESS;
event_fn_auto_ret<DWORD> event_auto(g_peer.get_event_fn_auto(__FUNCTION__, dwResult));
actctx_activator actctx(g_act_ctx);
#ifdef _DEBUG
//Sleep(10000);
#endif
// Parameter check
if (!ppEapError)
return dwResult = ERROR_INVALID_PARAMETER;
assert(!*ppEapError);
if (!pEapType)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pEapType is NULL.")));
else if (pEapType->eapType.type != EAPMETHOD_TYPE)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" Input EAP type (%d) does not match the supported EAP type (%d)."), (int)pEapType->eapType.type, (int)EAPMETHOD_TYPE).c_str()));
else if (pEapType->dwAuthorId != 67532)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_NOT_SUPPORTED, wstring_printf(_T(__FUNCTION__) _T(" EAP author (%d) does not match the supported author (%d)."), (int)pEapType->dwAuthorId, (int)67532).c_str()));
else if (!pUIContextData && dwUIContextDataSize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pUIContextData is NULL.")));
else if (!pdwDataFromInteractiveUISize)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" pdwDataFromInteractiveUISize is NULL.")));
else if (!ppDataFromInteractiveUI)
g_peer.log_error(*ppEapError = g_peer.make_error(dwResult = ERROR_INVALID_PARAMETER, _T(__FUNCTION__) _T(" ppDataFromInteractiveUI is NULL.")));
else {
try {
g_peer.invoke_interactive_ui(hwndParent, pUIContextData, dwUIContextDataSize, ppDataFromInteractiveUI, pdwDataFromInteractiveUISize);
} catch (std::exception &err) {
g_peer.log_error(*ppEapError = g_peer.make_error(err));
dwResult = (*ppEapError)->dwWinError;
} catch (...) {
dwResult = ERROR_INVALID_DATA;
}
}
return dwResult;
}

View File

@ -1,24 +1,10 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "StdAfx.h"
#include "PCH.h"
#if defined(__WXMSW__)
#pragma comment(lib, "msi.lib")
#endif
@ -28,6 +14,7 @@
// wxEventMonitorApp
//////////////////////////////////////////////////////////////////////////
#pragma warning(suppress: 28251)
wxIMPLEMENT_APP(wxEventMonitorApp);

View File

@ -1,26 +1,14 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
///
/// EventMonitor application
/// \defgroup EventMonitor Event Monitor
/// Real-time log of application events
///
class wxEventMonitorApp;
#pragma once
@ -32,6 +20,12 @@ class wxEventMonitorApp;
#include <wx/intl.h>
/// \addtogroup EventMonitor
/// @{
///
/// EventMonitor application
///
class wxEventMonitorApp : public wxApp
{
public:
@ -57,4 +51,6 @@ public:
wxLocale m_locale; ///< Current locale
};
/// @}
wxDECLARE_APP(wxEventMonitorApp);

View File

@ -1,24 +1,10 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "StdAfx.h"
#include "PCH.h"
#pragma comment(lib, "tdh.lib")
#pragma comment(lib, "Ws2_32.lib")
@ -78,8 +64,8 @@ wxEventTraceProcessorThread::wxEventTraceProcessorThread(wxEvtHandler *parent, c
for (size_t i = 0, i_end = sessions.GetCount(); i < i_end; i++) {
// Open trace.
tlf.LoggerName = const_cast<LPTSTR>((LPCTSTR)(sessions[i]));
event_trace trace;
if (!trace.create(&tlf)) {
event_trace trace(OpenTrace(&tlf));
if (!trace) {
wxLogError(_("Error opening event trace (error %u)."), GetLastError());
continue;
}
@ -115,6 +101,8 @@ void wxEventTraceProcessorThread::Abort()
}
/// \cond internal
wxThread::ExitCode wxEventTraceProcessorThread::Entry()
{
// Process events.
@ -130,15 +118,14 @@ VOID WINAPI wxEventTraceProcessorThread::EventRecordCallback(_In_ PEVENT_RECORD
wxASSERT_MSG(pEvent->UserContext, wxT("thread is NULL"));
wxEventTraceProcessorThread *_this = ((wxEventTraceProcessorThread*)pEvent->UserContext);
if (_this->TestDestroy()) {
// Event processing is pending destruction.
if (!_this || _this->TestDestroy())
return;
}
_this->m_parent->QueueEvent(new wxETWEvent(wxEVT_ETW_EVENT, *pEvent));
}
/// \endcond
//////////////////////////////////////////////////////////////////////////
// wxETWListCtrl
@ -164,17 +151,17 @@ wxETWListCtrl::wxETWListCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos
m_rec_idx(wxETWEVENT_RECORDS_MAX),
wxListCtrl(parent, id, pos, size, style, validator, name)
{
this->AppendColumn(_("Time" ), wxLIST_FORMAT_LEFT, 160);
this->AppendColumn(_("PID" ), wxLIST_FORMAT_LEFT, 50);
this->AppendColumn(_("TID" ), wxLIST_FORMAT_LEFT, 50);
this->AppendColumn(_("Source"), wxLIST_FORMAT_LEFT, 80);
this->AppendColumn(_("Event" ), wxLIST_FORMAT_LEFT, 350);
this->AppendColumn(_("Time" ), wxLIST_FORMAT_LEFT, FromDIP(160));
this->AppendColumn(_("PID" ), wxLIST_FORMAT_LEFT, FromDIP( 50));
this->AppendColumn(_("TID" ), wxLIST_FORMAT_LEFT, FromDIP( 50));
this->AppendColumn(_("Source"), wxLIST_FORMAT_LEFT, FromDIP( 80));
this->AppendColumn(_("Event" ), wxLIST_FORMAT_LEFT, FromDIP(350));
// Maximum expected column widths for pre-formatted row display
m_col_format_width[0] = 26;
m_col_format_width[1] = 5;
m_col_format_width[2] = 5;
m_col_format_width[3] = std::max<int>(std::max<int>(_countof("EapHost"), _countof("Schannel")), _countof(PRODUCT_NAME_STR)) - 1;
m_col_format_width[3] = std::max<size_t>(std::max<size_t>(_countof("EapHost"), _countof("Schannel")), _countof(PRODUCT_NAME_STR)) - 1;
m_col_format_width[4] = 0;
// Prepare all possible item attributes.
@ -200,11 +187,11 @@ wxETWListCtrl::wxETWListCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos
ULONG ulResult;
for (unsigned int i = 0; ; i++) {
//tstring log_file(tstring_printf(i ? _T("test.etl") : _T("test %u.etl"), i));
tstring name(tstring_printf(i ? _T(PRODUCT_NAME_STR) _T(" Event Monitor Session %u") : _T(PRODUCT_NAME_STR) _T(" Event Monitor Session"), i));
tstring session_name(tstring_printf(i ? _T(PRODUCT_NAME_STR) _T(" Event Monitor Session %u") : _T(PRODUCT_NAME_STR) _T(" Event Monitor Session"), i));
// Allocate session properties.
ULONG
ulSizeName = (ULONG)((name .length() + 1)*sizeof(TCHAR)),
ulSizeName = (ULONG)((session_name.length() + 1)*sizeof(TCHAR)),
//ulSizeLogFile = (ULONG)((log_file.length() + 1)*sizeof(TCHAR)),
ulSize = sizeof(EVENT_TRACE_PROPERTIES) + ulSizeName /*+ ulSizeLogFile*/;
unique_ptr<EVENT_TRACE_PROPERTIES> properties(reinterpret_cast<EVENT_TRACE_PROPERTIES*>(new char[ulSize]));
@ -215,20 +202,24 @@ wxETWListCtrl::wxETWListCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos
properties->Wnode.BufferSize = ulSize;
properties->Wnode.Flags = WNODE_FLAG_TRACED_GUID;
properties->Wnode.ClientContext = 1; //QPC clock resolution
CoCreateGuid(&(properties->Wnode.Guid));
HRESULT hr = CoCreateGuid(&(properties->Wnode.Guid));
if (FAILED(hr)) {
wxLogError(winstd::tstring_printf(wxT("error 0x%08x generating GUID"), hr).c_str());
continue;
}
properties->LogFileMode = /*EVENT_TRACE_FILE_MODE_SEQUENTIAL |*/ EVENT_TRACE_REAL_TIME_MODE;
properties->MaximumFileSize = 1; // 1 MB
properties->LoggerNameOffset = sizeof(EVENT_TRACE_PROPERTIES);
//properties->LogFileNameOffset = sizeof(EVENT_TRACE_PROPERTIES) + ulSizeName;
//memcpy(reinterpret_cast<char*>(properties.get()) + properties->LogFileNameOffset, log_file.c_str(), ulSizeLogFile);
if ((ulResult = m_session.create(name.c_str(), properties.get())) == ERROR_SUCCESS) {
if ((ulResult = m_session.create(session_name.c_str(), properties.get())) == ERROR_SUCCESS) {
break;
} else if (ulResult == ERROR_ACCESS_DENIED) {
wxLogError(_("Access denied creating event session: you need administrative privileges (Run As Administrator) or be a member of Performance Log Users group to start event tracing session."));
return;
} else if (ulResult == ERROR_ALREADY_EXISTS) {
wxLogDebug(_("The %s event session already exists."), name.c_str());
wxLogDebug(_("The %s event session already exists."), session_name);
// Do not despair... Retry with a new session name and ID.
continue;
} else {
@ -460,6 +451,8 @@ void wxETWListCtrl::RebuildItems()
}
/// \cond internal
bool wxETWListCtrl::IsVisible(const EVENT_RECORD &rec) const
{
return
@ -561,7 +554,7 @@ wxString wxETWListCtrl::OnGetItemText(long item, long column) const
}
wxString wxETWListCtrl::OnGetItemText(const event_rec &rec, long column) const
wxString wxETWListCtrl::OnGetItemText(const winstd::event_rec &rec, long column) const
{
switch (column) {
case 0: {
@ -601,33 +594,34 @@ wxString wxETWListCtrl::OnGetItemText(const event_rec &rec, long column) const
// Get event meta-info.
unique_ptr<TRACE_EVENT_INFO> info;
ULONG ulResult;
if ((ulResult = TdhGetEventInformation((PEVENT_RECORD)&rec, 0, NULL, info)) == ERROR_SUCCESS) {
if (info->DecodingSource != DecodingSourceWPP) {
if (rec.EventHeader.Flags & EVENT_HEADER_FLAG_STRING_ONLY) {
// This is a string-only event. Print it.
return reinterpret_cast<LPCWSTR>(rec.UserData);
} else {
// This is not a string-only event. Prepare parameters.
if ((ulResult = TdhGetEventInformation((PEVENT_RECORD)&rec, 0, NULL, info)) != ERROR_SUCCESS)
return tstring_printf(_T("(Error getting event information (error %u))"), ulResult).c_str();
BYTE nPtrSize = (rec.EventHeader.Flags & EVENT_HEADER_FLAG_32_BIT_HEADER) ? 4 : 8;
vector<tstring> props;
vector<DWORD_PTR> props_msg;
props.reserve(info->TopLevelPropertyCount);
props_msg.reserve(info->TopLevelPropertyCount);
for (ULONG i = 0; i < info->TopLevelPropertyCount; i++) {
props.push_back(std::move(PropertyToString((PEVENT_RECORD)&rec, info.get(), i, NULL, 0, nPtrSize)));
props_msg.push_back((DWORD_PTR)props[i].c_str());
}
if (info->DecodingSource != DecodingSourceWPP) {
if (rec.EventHeader.Flags & EVENT_HEADER_FLAG_STRING_ONLY) {
// This is a string-only event. Print it.
return reinterpret_cast<LPCWSTR>(rec.UserData);
} else {
// This is not a string-only event. Prepare parameters.
if (info->EventMessageOffset) {
// Format the message.
return wstring_msg(0, reinterpret_cast<LPCTSTR>(reinterpret_cast<LPCBYTE>(info.get()) + info->EventMessageOffset), props_msg.data()).c_str();
}
BYTE nPtrSize = (rec.EventHeader.Flags & EVENT_HEADER_FLAG_32_BIT_HEADER) ? 4 : 8;
vector<tstring> props;
vector<DWORD_PTR> props_msg;
props.reserve(info->TopLevelPropertyCount);
props_msg.reserve(info->TopLevelPropertyCount);
for (ULONG i = 0; i < info->TopLevelPropertyCount; i++) {
props.push_back(std::move(PropertyToString((PEVENT_RECORD)&rec, info.get(), i, NULL, 0, nPtrSize)));
props_msg.push_back((DWORD_PTR)props[i].c_str());
}
if (info->EventMessageOffset) {
// Format the message.
return wstring_msg(0, reinterpret_cast<LPCTSTR>(reinterpret_cast<LPCBYTE>(info.get()) + info->EventMessageOffset), props_msg.data()).c_str();
}
} else if (info->EventMessageOffset) {
// This is a WPP event.
return reinterpret_cast<LPCWSTR>(reinterpret_cast<LPCBYTE>(info.get()) + info->EventMessageOffset);
}
} else if (info->EventMessageOffset) {
// This is a WPP event.
return reinterpret_cast<LPCWSTR>(reinterpret_cast<LPCBYTE>(info.get()) + info->EventMessageOffset);
}
}
}
@ -678,6 +672,8 @@ void wxETWListCtrl::OnETWEvent(wxETWEvent& event)
}
}
/// \endcond
//////////////////////////////////////////////////////////////////////////
// wxPersistentETWListCtrl
@ -703,7 +699,7 @@ void wxPersistentETWListCtrl::Save() const
col.SetMask(wxLIST_MASK_TEXT | wxLIST_MASK_WIDTH);
for (int i = 0, n = wnd->GetColumnCount(); i < n; i++) {
wnd->GetColumn(i, col);
SaveValue(wxString::Format(wxT("Column%sWidth"), col.GetText().c_str()), col.GetWidth());
SaveValue(wxString::Format(wxT("Column%sWidth"), col.GetText()), col.GetWidth());
}
SaveValue(wxT("ScrollAuto"), wnd->m_scroll_auto);
@ -728,7 +724,7 @@ bool wxPersistentETWListCtrl::Restore()
wnd->GetColumn(i, col);
int width;
if (RestoreValue(wxString::Format(wxT("Column%sWidth"), col.GetText().c_str()), &width))
if (RestoreValue(wxString::Format(wxT("Column%sWidth"), col.GetText()), &width))
wnd->SetColumnWidth(i, width);
}
@ -768,13 +764,13 @@ static tstring MapToString(_In_ const EVENT_MAP_INFO *pMapInfo, _In_ ULONG ulDat
((pMapInfo->Flag & EVENTMAP_INFO_FLAG_WBEM_VALUEMAP ) && (pMapInfo->Flag & ~EVENTMAP_INFO_FLAG_WBEM_VALUEMAP) != EVENTMAP_INFO_FLAG_WBEM_FLAG))
{
if ((pMapInfo->Flag & EVENTMAP_INFO_FLAG_WBEM_NO_MAP) == EVENTMAP_INFO_FLAG_WBEM_NO_MAP)
return tstring_printf(_T("%ls"), (PBYTE)pMapInfo + pMapInfo->MapEntryArray[ulData].OutputOffset);
return tstring_printf(_T("%ls"), (LPCWSTR)((PBYTE)pMapInfo + pMapInfo->MapEntryArray[ulData].OutputOffset));
else {
for (ULONG i = 0; ; i++) {
if (i >= pMapInfo->EntryCount)
return tstring_printf(_T("%lu"), ulData);
else if (pMapInfo->MapEntryArray[i].Value == ulData)
return tstring_printf(_T("%ls"), (PBYTE)pMapInfo + pMapInfo->MapEntryArray[i].OutputOffset);
return tstring_printf(_T("%ls"), (LPCWSTR)((PBYTE)pMapInfo + pMapInfo->MapEntryArray[i].OutputOffset));
}
}
} else if (
@ -797,7 +793,7 @@ static tstring MapToString(_In_ const EVENT_MAP_INFO *pMapInfo, _In_ ULONG ulDat
return out.empty() ? tstring_printf(_T("%lu"), ulData) : out;
}
return _T("<unknown map>");
return _T("(unknown map)");
}
@ -809,7 +805,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case TDH_INTYPE_UNICODESTRING:
case TDH_INTYPE_NONNULLTERMINATEDSTRING:
case TDH_INTYPE_UNICODECHAR:
return tstring_printf(_T("%.*ls"), nDataSize/sizeof(WCHAR), pData);
return tstring_printf(_T("%.*ls"), (unsigned int)(nDataSize/sizeof(WCHAR)), (LPCWSTR)pData);
case TDH_INTYPE_ANSISTRING:
case TDH_INTYPE_NONNULLTERMINATEDANSISTRING:
@ -910,6 +906,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case TDH_INTYPE_BINARY:
switch (OutType) {
case TDH_OUTTYPE_IPV6: {
#pragma warning(suppress: 6387) // ntdll.dll *must* exist.
auto RtlIpv6AddressToString = (LPTSTR(NTAPI*)(const IN6_ADDR*, LPTSTR))GetProcAddress(GetModuleHandle(_T("ntdll.dll")),
#ifdef _UNICODE
"RtlIpv6AddressToStringW"
@ -922,7 +919,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
RtlIpv6AddressToString((IN6_ADDR*)pData, szIPv6Addr);
return tstring_printf(_T("%s"), szIPv6Addr);
} else
return _T("<IPv6 address>");
return _T("(IPv6 address)");
}
default: {
tstring out;
@ -937,8 +934,12 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case TDH_INTYPE_GUID: {
assert(nDataSize >= sizeof(GUID));
WCHAR szGuid[39];
StringFromGUID2(*(GUID*)pData, szGuid, _countof(szGuid));
return tstring_printf(_T("%ls"), szGuid);
if (StringFromGUID2(*(GUID*)pData, szGuid, _countof(szGuid)))
return tstring_printf(_T("%ls"), szGuid);
else {
assert(0);
return _T("(GUID)");
}
}
case TDH_INTYPE_POINTER:
@ -948,7 +949,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case sizeof(ULONGLONG): return tstring_printf(_T("0x%016I64x"), *(PULONGLONG)pData);
default: // Unsupported pointer size.
assert(0);
return _T("<pointer>");
return _T("(pointer)");
}
case TDH_INTYPE_SIZET:
@ -958,7 +959,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case sizeof(ULONGLONG): return tstring_printf(_T("%I64u"), *(PULONGLONG)pData);
default: // Unsupported size_t size.
assert(0);
return _T("<size_t>");
return _T("(size_t)");
}
case TDH_INTYPE_FILETIME: {
@ -975,7 +976,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
case TDH_OUTTYPE_CULTURE_INSENSITIVE_DATETIME: return tstring_printf(_T("%04d-%02d-%02d %02d:%02d:%02d.%03u"), ((PSYSTEMTIME)pData)->wYear, ((PSYSTEMTIME)pData)->wMonth, ((PSYSTEMTIME)pData)->wDay, ((PSYSTEMTIME)pData)->wHour, ((PSYSTEMTIME)pData)->wMinute, ((PSYSTEMTIME)pData)->wSecond, ((PSYSTEMTIME)pData)->wMilliseconds);
default: {
tstring out;
return GetDateFormat(LOCALE_USER_DEFAULT, DATE_LONGDATE, (PSYSTEMTIME)pData, NULL, out) ? out : tstring(_T("<time>"));
return GetDateFormat(LOCALE_USER_DEFAULT, DATE_LONGDATE, (PSYSTEMTIME)pData, NULL, out) ? out : tstring(_T("(time)"));
}}
case TDH_INTYPE_WBEMSID:
@ -987,7 +988,7 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
// 32-bit computer and 16 bytes on a 64-bit computer.
// Doubling the pointer size handles both cases.
assert(nDataSize >= (SIZE_T)nPtrSize * 2);
return (PULONG)pData > 0 ? DataToString(TDH_INTYPE_SID, OutType, pData + nPtrSize * 2, nDataSize - nPtrSize * 2, pMapInfo, nPtrSize) : _T("<WBEM SID>");
return (PULONG)pData > 0 ? DataToString(TDH_INTYPE_SID, OutType, pData + (SIZE_T)nPtrSize * 2, nDataSize - (SIZE_T)nPtrSize * 2, pMapInfo, nPtrSize) : _T("(WBEM SID)");
case TDH_INTYPE_SID: {
assert(nDataSize >= sizeof(SID));
@ -1001,14 +1002,14 @@ static tstring DataToString(_In_ USHORT InType, _In_ USHORT OutType, _In_count_(
ConvertSidToStringSid((PSID)pData, (LPTSTR*)&sid))
return tstring_printf(_T("%s"), sid.get());
else
return _T("<SID>");
return _T("(SID)");
}
}
default:
// It is not actually an error if we do not understand the given data type.
assert(0);
return _T("<unknown data type>");
return _T("(unknown data type)");
}
}
@ -1019,7 +1020,7 @@ static ULONG GetArraySize(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, ULONG i
ULONG ulResult;
// Get array count property.
PROPERTY_DATA_DESCRIPTOR data_desc = { (ULONGLONG)(reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[pInfo->EventPropertyInfoArray[i].countPropertyIndex].NameOffset), ULONG_MAX };
PROPERTY_DATA_DESCRIPTOR data_desc = { (ULONGLONG)pInfo + pInfo->EventPropertyInfoArray[pInfo->EventPropertyInfoArray[i].countPropertyIndex].NameOffset, ULONG_MAX };
vector<unsigned char> count;
if ((ulResult = TdhGetProperty(pEvent, 0, NULL, 1, &data_desc, count)) != ERROR_SUCCESS)
return ulResult;
@ -1045,7 +1046,7 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
// Get the size of the array if the property is an array.
ULONG ulArraySize = 0;
if ((ulResult = GetArraySize(pEvent, pInfo, ulPropIndex, &ulArraySize)) != ERROR_SUCCESS)
return tstring_printf(_T("<Error getting array size (error %u)>"), ulResult);;
return tstring_printf(_T("(Error getting array size (error %u))"), ulResult);
tstring out;
bool out_nonfirst = false;
@ -1059,7 +1060,7 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
if (out_nonfirst) out += _T(", "); else out_nonfirst = true;
out += _T('(');
for (USHORT j = pInfo->EventPropertyInfoArray[ulPropIndex].structType.StructStartIndex, usLastMember = pInfo->EventPropertyInfoArray[ulPropIndex].structType.StructStartIndex + pInfo->EventPropertyInfoArray[ulPropIndex].structType.NumOfStructMembers; j < usLastMember; j++) {
out += tstring_printf(_T("%ls: "), reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[j].NameOffset);
out += tstring_printf(_T("%ls: "), (LPCWSTR)(reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[j].NameOffset));
out += PropertyToString(pEvent, pInfo, j, reinterpret_cast<LPWSTR>(reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[ulPropIndex].NameOffset), k, nPtrSize);
}
out += _T(')');
@ -1070,7 +1071,7 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
// The TDH API does not support IPv6 addresses. If the output type is TDH_OUTTYPE_IPV6,
// you will not be able to consume the rest of the event. If you try to consume the
// remainder of the event, you will get ERROR_EVT_INVALID_EVENT_DATA.
return _T("<The event contains an IPv6 address. Skipping.>");
return _T("(The event contains an IPv6 address. Skipping.)");
} else {
vector<BYTE> data;
if (pStructureName) {
@ -1078,19 +1079,19 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
// The first descriptor in the array identifies the name of the structure and the second
// descriptor defines the member of the structure whose data you want to retrieve.
PROPERTY_DATA_DESCRIPTOR data_desc[2] = {
{ (ULONGLONG)pStructureName , ulStructIndex },
{ (ULONGLONG)(reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[ulPropIndex].NameOffset), k }
{ (ULONGLONG)pStructureName , ulStructIndex },
{ (ULONGLONG)pInfo + pInfo->EventPropertyInfoArray[ulPropIndex].NameOffset, k }
};
ulResult = TdhGetProperty(pEvent, 0, NULL, _countof(data_desc), data_desc, data);
} else {
PROPERTY_DATA_DESCRIPTOR data_desc = { (ULONGLONG)(reinterpret_cast<LPBYTE>(pInfo) + pInfo->EventPropertyInfoArray[ulPropIndex].NameOffset), k };
PROPERTY_DATA_DESCRIPTOR data_desc = { (ULONGLONG)pInfo + pInfo->EventPropertyInfoArray[ulPropIndex].NameOffset, k };
ulResult = TdhGetProperty(pEvent, 0, NULL, 1, &data_desc, data);
}
if (ulResult == ERROR_EVT_INVALID_EVENT_DATA) {
// This happens with empty/NULL data. Not an error actually.
assert(data.empty());
} else if (ulResult != ERROR_SUCCESS)
return tstring_printf(_T("<Error getting property (error %u)>"), ulResult);
return tstring_printf(_T("(Error getting property (error %u))"), ulResult);
// Get the name/value mapping if the property specifies a value map.
unique_ptr<EVENT_MAP_INFO> map_info;
@ -1099,7 +1100,7 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
// name/value mapping not found. Not an error actually.
assert(!map_info);
} else if (ulResult != ERROR_SUCCESS)
return tstring_printf(_T("<Error getting map information (error %u)>"), ulResult);
return tstring_printf(_T("(Error getting map information (error %u))"), ulResult);
else if (pInfo->DecodingSource == DecodingSourceXMLFile) {
// The mapped string values defined in a manifest will contain a trailing space
// in the EVENT_MAP_ENTRY structure. Replace the trailing space with a null-
@ -1118,7 +1119,7 @@ static tstring PropertyToString(PEVENT_RECORD pEvent, PTRACE_EVENT_INFO pInfo, U
data.data(),
data.size(),
map_info.get(),
nPtrSize) : _T("<null>");
nPtrSize) : _T("(null)");
}
}
}

View File

@ -1,51 +1,28 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include <wx/event.h>
/// \addtogroup EventMonitor
/// @{
///
/// Maximum number of event records kept
///
#define wxETWEVENT_RECORDS_MAX 1000000
///
/// ETW event
///
/// @}
class wxETWEvent;
wxDECLARE_EVENT(wxEVT_ETW_EVENT, wxETWEvent);
#define wxETWEventHandler(func) wxEVENT_HANDLER_CAST(wxETWEventFunction, func)
#define EVT_ETW_EVENT(func) wx__DECLARE_EVT0(wxEVT_ETW_EVENT, wxETWEventHandler(func))
///
/// Event trace processor
///
class wxEventTraceProcessorThread;
///
/// Event list control
///
class wxETWListCtrl;
///
/// Supports saving/restoring wxETWListCtrl state
///
class wxPersistentETWListCtrl;
#pragma once
@ -54,6 +31,7 @@ class wxPersistentETWListCtrl;
#include <wx/persist/window.h>
#include <wx/thread.h>
#include <stdex/vector_queue.hpp>
#include <WinStd/ETW.h>
#include <memory>
@ -61,47 +39,106 @@ class wxPersistentETWListCtrl;
#include <set>
/// \addtogroup EventMonitor
/// @{
///
/// ETW event
///
class wxETWEvent : public wxEvent
{
public:
///
/// Creates ETW event
///
/// \param[in] type The unique type of event
/// \param[in] record ETW event record
///
wxETWEvent(wxEventType type = wxEVT_NULL, const EVENT_RECORD &record = s_record_null);
///
/// Copies an ETW event
///
/// \param[in] event ETW event to copy from
///
wxETWEvent(const wxETWEvent& event);
virtual wxEvent *Clone() const { return new wxETWEvent(*this); }
inline const winstd::event_rec& GetRecord() const { return m_record; }
inline winstd::event_rec& GetRecord() { return m_record; }
///
/// Clones the ETW event
///
/// \returns Event copy
///
virtual wxEvent *Clone() const
{
return new wxETWEvent(*this);
}
protected:
bool DoSetExtendedData(size_t extended_data_count, const EVENT_HEADER_EXTENDED_DATA_ITEM *extended_data);
bool DoSetUserData(size_t user_data_length, const void *user_data);
///
/// Returns ETW event record assosiated with event
///
inline const winstd::event_rec& GetRecord() const
{
return m_record;
}
///
/// Returns ETW event record assosiated with event
///
inline winstd::event_rec& GetRecord()
{
return m_record;
}
private:
DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxETWEvent)
public:
static const EVENT_RECORD s_record_null;
static const EVENT_RECORD s_record_null; ///< Blank ETW event record
protected:
winstd::event_rec m_record; ///< ETW event record
};
///
/// Prototype of the function consuming `wxETWEvent` events
///
typedef void (wxEvtHandler::*wxETWEventFunction)(wxETWEvent&);
///
/// Monitors ETW events and forwards them as `wxETWEvent` event
///
class wxEventTraceProcessorThread : public wxThread
{
public:
///
/// A thread to process ETW events
///
/// \param[in] parent Event handler this thread will send record notifications
/// \param[in] sessions An array of sessions to monitor
///
wxEventTraceProcessorThread(wxEvtHandler *parent, const wxArrayString &sessions);
///
/// Destructor
///
virtual ~wxEventTraceProcessorThread();
///
/// Closes all session handles to allow graceful thread termination
///
void Abort();
protected:
/// \cond internal
virtual ExitCode Entry();
/// \endcond
private:
static VOID WINAPI EventRecordCallback(PEVENT_RECORD pEvent);
/// \cond internal
static VOID WINAPI EventRecordCallback(_In_ PEVENT_RECORD pEvent);
/// \endcond
protected:
std::vector<TRACEHANDLE> m_traces; ///< An array of tracing sessions this thread is monitoring
@ -109,14 +146,20 @@ protected:
};
///
/// Event list control
///
class wxETWListCtrl : public wxListCtrl
{
protected:
///
/// Functor for GUID comparison
///
struct less_guid : public std::binary_function<GUID, GUID, bool>
struct less_guid
{
///
/// Compares two GUIDs
///
bool operator()(const GUID &a, const GUID &b) const
{
if (a.Data1 < b.Data1) return true;
@ -136,6 +179,17 @@ protected:
typedef std::set<GUID, less_guid> guidset;
public:
///
/// Creates a list control for ETW log display
///
/// \param[in] parent Parent window. Must not be \c NULL.
/// \param[in] id Window identifier. The value \c wxID_ANY indicates a default value.
/// \param[in] pos Window position. If \c wxDefaultPosition is specified then a default position is chosen.
/// \param[in] size Window size. If \c wxDefaultSize is specified then the window is sized appropriately.
/// \param[in] style Window style. See \c wxListCtrl.
/// \param[in] validator Window validator
/// \param[in] name Window name
///
wxETWListCtrl(
wxWindow *parent,
wxWindowID id = wxID_ANY,
@ -144,21 +198,70 @@ public:
long style = wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VIRTUAL|wxNO_BORDER,
const wxValidator &validator = wxDefaultValidator,
const wxString &name = wxListCtrlNameStr);
///
/// Destructor
///
virtual ~wxETWListCtrl();
inline bool IsEmpty() const { return m_rec_db.empty(); }
///
/// Returns true if the list is empty
///
inline bool IsEmpty() const
{
return m_rec_db.empty();
}
///
/// Copies selected rows to clipboard
///
void CopySelected() const;
///
/// Copies all rows (including hidden ones) to clipboard
///
void CopyAll() const;
///
/// Empties the list
///
void ClearAll();
///
/// Selects all rows
///
void SelectAll();
///
/// Clears row selection
///
void SelectNone();
///
/// Rebuilds the list
///
void RebuildItems();
///
/// Checks if given ETW source is enabled
///
/// \param[in] guid GUID of ETW source
///
/// \returns
/// - \c true if ETW source with \p guid GUID is enabled;
/// - \c false otherwise.
///
inline bool IsSourceEnabled(const GUID &guid) const
{
return m_sources.find(guid) != m_sources.end();
}
///
/// Enables/Disables ETW source
///
/// \param[in] guid GUID of ETW source
/// \param[in] enable \c true to enable, \c false to disable
///
inline void EnableSource(const GUID &guid, bool enable = true)
{
auto s = m_sources.find(guid);
@ -178,6 +281,7 @@ public:
friend class wxPersistentETWListCtrl; // Allow saving/restoring window state.
protected:
/// \cond internal
bool IsVisible(const EVENT_RECORD &rec) const;
void FormatRow(const winstd::event_rec &rec, std::string &rowA, std::wstring &rowW) const;
bool CopyToClipboard(const std::string &dataA, const std::wstring &dataW) const;
@ -186,6 +290,8 @@ protected:
virtual wxString OnGetItemText(long item, long column) const;
virtual wxString OnGetItemText(const winstd::event_rec &rec, long column) const;
void OnETWEvent(wxETWEvent& event);
/// \endcond
DECLARE_EVENT_TABLE()
public:
@ -202,25 +308,55 @@ protected:
guidset m_sources; ///< Set of enabled sources
wxListItemAttr m_item_attr[2][4]; ///< Current item attributes
winstd::vector_queue<winstd::event_rec> m_rec_db; ///< Event record database
winstd::vector_queue<size_t> m_rec_idx; ///< Event record database indices of shown records
stdex::vector_queue<winstd::event_rec> m_rec_db; ///< Event record database
stdex::vector_queue<size_t> m_rec_idx; ///< Event record database indices of shown records
size_t m_col_format_width[5]; ///< Column widths for pre-formatted row display (0 = unlimited)
};
///
/// Supports saving/restoring `wxETWListCtrl` state
///
class wxPersistentETWListCtrl : public wxPersistentWindow<wxETWListCtrl>
{
public:
///
/// Constructor for a persistent window object
///
/// \param[in] wnd Window this object will save/restore
///
wxPersistentETWListCtrl(wxETWListCtrl *wnd);
///
/// Returns the string uniquely identifying the objects supported by this adapter.
///
/// \returns This implementation always returns `wxT(wxPERSIST_TLW_KIND)`
///
virtual wxString GetKind() const;
///
/// Saves the object properties
///
virtual void Save() const;
///
/// Restores the object properties
///
/// \returns
/// - \c true if the properties were successfully restored;
/// - \c false otherwise.
///
virtual bool Restore();
};
///
/// Creates persistent window object for `wxETWListCtrl` class window
///
inline wxPersistentObject *wxCreatePersistentObject(wxETWListCtrl *wnd)
{
return new wxPersistentETWListCtrl(wnd);
}
/// @}

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\lib\WinStd\include;..\lib\wxExtend\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

Binary file not shown.

View File

@ -1,6 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
@ -9,6 +13,10 @@
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
@ -20,68 +28,42 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{E0D0725B-B2FC-4225-9481-CA9B1B6306F2}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>EventMonitor</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<PropertyGroup Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PropertyGroup Label="Configuration" Condition="'$(Platform)'=='ARM64'">
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\Win32.props" />
<Import Project="..\include\Debug.props" />
<Import Project="EventMonitor.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\x64.props" />
<Import Project="..\include\Debug.props" />
<Import Project="EventMonitor.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\Win32.props" />
<Import Project="..\include\Release.props" />
<Import Project="EventMonitor.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\include\x64.props" />
<Import Project="..\include\Release.props" />
<Import Project="EventMonitor.props" />
<Import Project="..\include\$(Platform).props" />
<Import Project="..\include\$(Configuration).props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<PropertyGroup>
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>..\lib\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\lib\WinStd\include;..\lib\stdex\include;..\lib\wxExtend\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ResourceCompile Include="EventMonitor.rc" />
</ItemGroup>
@ -90,7 +72,7 @@
<ClInclude Include="ETWLog.h" />
<ClInclude Include="Frame.h" />
<ClInclude Include="LogPanel.h" />
<ClInclude Include="StdAfx.h" />
<ClInclude Include="PCH.h" />
<ClInclude Include="res\wxEventMonitor_UI.h" />
</ItemGroup>
<ItemGroup>
@ -98,11 +80,8 @@
<ClCompile Include="ETWLog.cpp" />
<ClCompile Include="Frame.cpp" />
<ClCompile Include="LogPanel.cpp" />
<ClCompile Include="StdAfx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
<ClCompile Include="PCH.cpp">
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="res\wxEventMonitor_UI.cpp" />
</ItemGroup>
@ -110,9 +89,6 @@
<ProjectReference Include="..\lib\Events\build\Events.vcxproj">
<Project>{d63f24bd-92a0-4d6b-8b69-ed947e4d2b1b}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\WinStd\build\WinStd.vcxproj">
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
</ProjectReference>
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib.vcxproj">
<Project>{d3e29951-d9f5-486d-a167-20ae8e90b1fa}</Project>
</ProjectReference>
@ -130,6 +106,7 @@
<POCompile Include="locale\de_DE.po" />
<POCompile Include="locale\el_GR.po" />
<POCompile Include="locale\es_ES.po" />
<POCompile Include="locale\et_EE.po" />
<POCompile Include="locale\eu_ES.po" />
<POCompile Include="locale\fi_FI.po" />
<POCompile Include="locale\fr_CA.po" />
@ -147,6 +124,7 @@
<POCompile Include="locale\pt_PT.po" />
<POCompile Include="locale\ru_RU.po" />
<POCompile Include="locale\sk_SK.po" />
<POCompile Include="locale\ro_RO.po" />
<POCompile Include="locale\sl_SI.po" />
<POCompile Include="locale\sr_RS.po" />
<POCompile Include="locale\sv_SE.po" />

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
@ -24,7 +24,7 @@
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="StdAfx.h">
<ClInclude Include="PCH.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="App.h">
@ -44,7 +44,7 @@
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="StdAfx.cpp">
<ClCompile Include="PCH.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="App.cpp">
@ -75,6 +75,9 @@
</None>
</ItemGroup>
<ItemGroup>
<POCompile Include="locale\ro_RO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\sl_SI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
@ -162,5 +165,8 @@
<POCompile Include="locale\ko_KR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="locale\et_EE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
</ItemGroup>
</Project>

View File

@ -1,24 +1,10 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "StdAfx.h"
#include "PCH.h"
//////////////////////////////////////////////////////////////////////////
@ -26,10 +12,10 @@
//////////////////////////////////////////////////////////////////////////
wxEventMonitorFrame::wxEventMonitorFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) :
wxFrame(parent, id, title, pos, size, style, name)
wxEventMonitorFrame::wxEventMonitorFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, long style, const wxString& name) :
wxFrame(parent, id, title, pos, parent->FromDIP(wxSize(600,400)), style, name)
{
this->SetSizeHints(wxSize(150,150), wxDefaultSize);
this->SetSizeHints(FromDIP(wxSize(150,150)), wxDefaultSize);
m_mgr.SetManagedWindow(this);
m_mgr.SetFlags(wxAUI_MGR_DEFAULT);
@ -47,14 +33,9 @@ wxEventMonitorFrame::wxEventMonitorFrame(wxWindow* parent, wxWindowID id, const
wxString prod_status_bar;
prod_status_bar.Printf(_("Toggles display of %s records"), wxT(PRODUCT_NAME_STR));
winstd::library lib_comres;
lib_comres.load(_T("comres.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE);
winstd::library lib_ieframe;
lib_ieframe.load(_T("ieframe.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE);
winstd::library lib_shell32;
lib_shell32.load(_T("shell32.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE);
winstd::library lib_comres(LoadLibraryEx(_T("comres.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE));
winstd::library lib_ieframe(LoadLibraryEx(_T("ieframe.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE));
winstd::library lib_shell32(LoadLibraryEx(_T("shell32.dll"), NULL, LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_IMAGE_RESOURCE));
wxSize size_menu(GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON));
wxSize size_tool(size_menu);
@ -261,6 +242,8 @@ wxEventMonitorFrame::~wxEventMonitorFrame()
}
/// \cond internal
void wxEventMonitorFrame::OnExit(wxCommandEvent& event)
{
Close();
@ -408,6 +391,8 @@ void wxEventMonitorFrame::OnViewToolbar(wxCommandEvent& event)
}
}
/// \endcond
//////////////////////////////////////////////////////////////////////////
// wxPersistentEventMonitorFrame

View File

@ -1,34 +1,13 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
///
/// EventMonitor main frame
///
class wxEventMonitorFrame;
///
/// Supports saving/restoring wxEventMonitorFrame GUI state
///
class wxPersistentEventMonitorFrame;
#pragma once;
#pragma once
#include "LogPanel.h"
@ -41,7 +20,16 @@ class wxPersistentEventMonitorFrame;
#include <WinStd/Win.h>
#pragma warning(push)
#pragma warning(disable: 26444)
/// \addtogroup EventMonitor
/// @{
///
/// EventMonitor main frame
///
class wxEventMonitorFrame : public wxFrame
{
protected:
@ -62,12 +50,28 @@ protected:
};
public:
wxEventMonitorFrame(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Event Monitor"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(600,400), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL, const wxString& name = wxT("EventMonitor"));
///
/// Creates an EventMonitor frame window
///
/// \param[in] parent The window parent. This may be \c NULL. If it is non-NULL, the frame will always be displayed on top of the parent window on Windows.
/// \param[in] id The window identifier. It may take a value of \c wxID_ANY to indicate a default value.
/// \param[in] title The caption to be displayed on the frame's title bar.
/// \param[in] pos The window position. The value \c wxDefaultPosition indicates a default position, chosen by either the windowing system or wxWidgets, depending on platform.
/// \param[in] size The window size. The value \c wxDefaultSize indicates a default size, chosen by either the windowing system or wxWidgets, depending on platform.
/// \param[in] style The window style. See `wxFrame` class description.
/// \param[in] name The name of the window. This parameter is used to associate a name with the item, allowing the application user to set Motif resource values for individual windows.
///
wxEventMonitorFrame(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Event Monitor"), const wxPoint& pos = wxDefaultPosition, long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL, const wxString& name = wxT("EventMonitor"));
///
/// Destructor
///
~wxEventMonitorFrame();
friend class wxPersistentEventMonitorFrame;
protected:
/// \cond internal
void OnExit(wxCommandEvent& event);
void OnEditCopyUpdate(wxUpdateUIEvent& event);
void OnEditCopy(wxCommandEvent& event);
@ -87,8 +91,10 @@ protected:
void OnViewLevel(wxCommandEvent& event);
void OnViewToolbarUpdate(wxUpdateUIEvent& event);
void OnViewToolbar(wxCommandEvent& event);
/// \endcond
protected:
/// \cond internal
wxMenuBar* m_menubar;
wxMenu* m_menuProgram;
wxMenu* m_menuEdit;
@ -114,20 +120,47 @@ protected:
wxStatusBar* m_statusBar;
wxEventMonitorLogPanel* m_panel;
wxAuiManager m_mgr;
/// \endcond
};
///
/// Supports saving/restoring `wxEventMonitorFrame` GUI state
///
class wxPersistentEventMonitorFrame : public wxPersistentTLW
{
public:
///
/// Constructor for a persistent window object
///
/// \param[in] wnd Window this object will save/restore
///
wxPersistentEventMonitorFrame(wxEventMonitorFrame *wnd);
///
/// Saves the object properties
///
virtual void Save() const;
///
/// Restores the object properties
///
/// \returns
/// - \c true if the properties were successfully restored;
/// - \c false otherwise.
///
virtual bool Restore();
};
///
/// Creates persistent window object for `wxETWListCtrl` class window
///
inline wxPersistentObject *wxCreatePersistentObject(wxEventMonitorFrame *wnd)
{
return new wxPersistentEventMonitorFrame(wnd);
}
/// @}
#pragma warning(pop)

View File

@ -1,24 +1,10 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "StdAfx.h"
#include "PCH.h"
//////////////////////////////////////////////////////////////////////////

View File

@ -1,31 +1,10 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
///
/// EventMonitor trace log panel
///
class wxEventMonitorLogPanel;
///
/// Supports saving/restoring wxEventMonitorLogPanel state
///
class wxPersistentEventMonitorLogPanel;
#pragma once
@ -34,27 +13,68 @@ class wxPersistentEventMonitorLogPanel;
#include <wx/persist/window.h>
/// \addtogroup EventMonitor
/// @{
///
/// EventMonitor trace log panel
///
class wxEventMonitorLogPanel : public wxEventMonitorLogPanelBase
{
public:
///
/// Constructs EventMonitor log panel
///
/// \param[in] parent Parent window. Must not be \c NULL.
///
wxEventMonitorLogPanel(wxWindow* parent);
friend class wxPersistentEventMonitorLogPanel; // Allow saving/restoring window state.
};
///
/// Supports saving/restoring `wxEventMonitorLogPanel` state
///
class wxPersistentEventMonitorLogPanel : public wxPersistentWindow<wxEventMonitorLogPanel>
{
public:
///
/// Constructor for a persistent window object
///
/// \param[in] wnd Window this object will save/restore
///
wxPersistentEventMonitorLogPanel(wxEventMonitorLogPanel *wnd);
///
/// Returns the string uniquely identifying the objects supported by this adapter.
///
/// \returns This implementation always returns `wxT(wxPERSIST_TLW_KIND)`
///
virtual wxString GetKind() const;
///
/// Saves the object properties
///
virtual void Save() const;
///
/// Restores the object properties
///
/// \returns
/// - \c true if the properties were successfully restored;
/// - \c false otherwise.
///
virtual bool Restore();
};
///
/// Creates persistent window object for `wxEventMonitorLogPanel` class window
///
inline wxPersistentObject *wxCreatePersistentObject(wxEventMonitorLogPanel *wnd)
{
return new wxPersistentEventMonitorLogPanel(wnd);
}
/// @}

Binary file not shown.

7
EventMonitor/PCH.cpp Normal file
View File

@ -0,0 +1,7 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#include "PCH.h"

39
EventMonitor/PCH.h Normal file
View File

@ -0,0 +1,39 @@
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2015-2022 Amebis
Copyright © 2016 GÉANT
*/
#pragma once
#include "App.h"
#include "ETWLog.h"
#include "Frame.h"
#include "LogPanel.h"
#include "../lib/EAPBase_UI/include/EAP_UI.h"
#include "../include/Version.h"
#include <wxex/common.h>
#include <wxex/object.h>
#include <wxex/persist/auimanager.h>
#include <WinStd/COM.h>
#include <WinStd/ETW.h>
#include <WinStd/Win.h>
#include <Windows.h>
#include <Msi.h>
#include <tchar.h>
#include <in6addr.h>
#include <MSTcpIP.h>
#include <Sddl.h>
#include <tchar.h>
#include <utility>
#include <vector>
#include <set>
#include <EventsETW.h> // Must include after <Windows.h>

View File

@ -1,21 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#include "StdAfx.h"

View File

@ -1,53 +0,0 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 GÉANT
This file is part of GÉANTLink.
GÉANTLink is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GÉANTLink is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GÉANTLink. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "App.h"
#include "ETWLog.h"
#include "Frame.h"
#include "LogPanel.h"
#include "../lib/EAPBase_UI/include/EAP_UI.h"
#include "../include/Version.h"
#include <wxex/common.h>
#include <wxex/object.h>
#include <wxex/persist/auimanager.h>
#include <WinStd/COM.h>
#include <WinStd/ETW.h>
#include <WinStd/Win.h>
#include <Windows.h>
#include <Msi.h>
#include <tchar.h>
#include <in6addr.h>
#include <MSTcpIP.h>
#include <Sddl.h>
#include <tchar.h>
#include <utility>
#include <vector>
#include <set>
#include <EventsETW.h> // Must include after <Windows.h>

View File

@ -2,22 +2,21 @@
msgid ""
msgstr ""
"Project-Id-Version: EventMonitor\n"
"POT-Creation-Date: 2016-09-19 11:14+0200\n"
"POT-Creation-Date: 2019-08-12 14:04+0200\n"
"PO-Revision-Date: 2016-06-02 12:27+0200\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.9\n"
"X-Generator: Poedit 2.2.3\n"
"X-Poedit-Basepath: ..\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language: en_US\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: .\n"
#: App.cpp:61 Frame.h:67 MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: App.cpp:61 Frame.h:75 MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: MSIBuild/en_US.x64.Release.Feature-2.idtx:4
msgid "Event Monitor"
msgstr ""
@ -27,41 +26,41 @@ msgstr ""
msgid "Error opening event trace (error %u)."
msgstr ""
#: ETWLog.cpp:167
#: ETWLog.cpp:171
msgid "Time"
msgstr ""
#: ETWLog.cpp:168
#: ETWLog.cpp:172
msgid "PID"
msgstr ""
#: ETWLog.cpp:169
#: ETWLog.cpp:173
msgid "TID"
msgstr ""
#: ETWLog.cpp:170
#: ETWLog.cpp:174
msgid "Source"
msgstr ""
#: ETWLog.cpp:171
#: ETWLog.cpp:175
msgid "Event"
msgstr ""
#: ETWLog.cpp:228
#: ETWLog.cpp:232
msgid "Access denied creating event session: you need administrative privileges (Run As Administrator) or be a member of Performance Log Users group to start event tracing session."
msgstr ""
#: ETWLog.cpp:231
#, c-format
msgid "The %s event session already exists."
msgstr ""
#: ETWLog.cpp:235
#, c-format
msgid "The %s event session already exists."
msgstr ""
#: ETWLog.cpp:239
#, c-format
msgid "Error creating event session (error %u)."
msgstr ""
#: ETWLog.cpp:251 ETWLog.cpp:267 ETWLog.cpp:281
#: ETWLog.cpp:255 ETWLog.cpp:271 ETWLog.cpp:285
#, c-format
msgid "Error enabling %s event provider (error %u)."
msgstr ""
@ -205,6 +204,8 @@ msgstr ""
msgid "Trace Log"
msgstr ""
#: MSIBuild/en_US.ARM64.Release.Feature-2.idtx:4
#: MSIBuild/en_US.ARM64.Release.Shortcut-2.idtx:4
#: MSIBuild/en_US.Win32.Release.Feature-2.idtx:4
#: MSIBuild/en_US.Win32.Release.Shortcut-2.idtx:4
#: MSIBuild/en_US.x64.Release.Feature-2.idtx:4
@ -212,6 +213,7 @@ msgstr ""
msgid "Real-time display of internal events"
msgstr ""
#: MSIBuild/en_US.ARM64.Release.Shortcut-2.idtx:4
#: MSIBuild/en_US.Win32.Release.Shortcut-2.idtx:4
#: MSIBuild/en_US.x64.Release.Shortcut-2.idtx:4
msgid "EVENTM~1|GÉANTLink Event Monitor"

Some files were not shown because too many files have changed in this diff Show More