DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

DNS: Add POSIX DNS implementation - #334

Draft
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code
Draft

DNS: Add POSIX DNS implementation#334
0x5ECF4ULT wants to merge 14 commits into
dotnet:developfrom
0x5ECF4ULT:posix-dns-implementation-using-native-code

Conversation

@0x5ECF4ULT

@0x5ECF4ULT0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown

What's the problem?

Kerberos.NET doesn't include "autodiscovery" of the KDC on a Linux host. Therefore one must "rely completely on a krb5 configuration file to provide all the necessary records, but that's complicated and messy." (qouted from here)

What's the solution?

I've implemented a native approach using resolv.h and friends in libc. I basically ported code written by Gerald Carter. Sadly, I don't have the original link to the gist anymore.

What issue is this related to, if any?

#185

@dnfadmin

dnfadmin commented Feb 22, 2023

Copy link
Copy Markdown

CLA assistant check
All CLA requirements met.

@0x5ECF4ULT

0x5ECF4ULT commented Feb 22, 2023

Copy link
Copy Markdown
Author

I have bumped the language version manually. Not doing this caused all kinds of havoc in my build environment. I hope this is covered by the Contribution Guidelines.

var buffer = new char[NS_PACKETSZ];

short respLen = -1;
if ((respLen = ResQuery(query, NsClass.NsCIn, type, buffer, NS_PACKETSZ)) < 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: brackets

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong about them?

@0x5ECF4ULT

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

I still have to refactor the tests to run on Linux (dependencies on WinForms). Is this something that is better suited for another PR? I didn't plan to make that big of a change to the codebase.

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

That said, I don't have a strong preference either way. If it's just a matter of refactoring the unit test library then you can bundle those changes here. If it requires substantial changes to the main Kerberos library then that would probably be better suited for a separate PR.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

There will be considerable other problems with getting the tests running on Linux, like Windows crypto dependencies for DH, etc.

This could be a matter excluding some tests per platform. I believe pragmas can be used for this. That doesn't affect the main lib.

I haven't looked into Bruce but at least the references related to KerbDumpCore will need to go somehow. Porting this as a whole will definitely take a considerable amount of time. Avalonia is definitely helpful here.

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

That seems reasonable then. There's no particular reason for everything to exist in the Bruce project, and by extension all linked to the single test project. It could probably be split into Bruce-host, Bruce-xplat, Bruce-Windows, and then a separate test project and a ignore-on-linux configuration (or whatever is the common method of separating things in other projects).

@SteveSyfuhs

Copy link
Copy Markdown
Collaborator

BTW, if you're looking at the builds and noticing it's failing, that's normal. If you look at the details for the latest build (https://github.com/dotnet/Kerberos.NET/pull/334/checks?check_run_id=11557826802) you'll see errors about pushing the package. That means the both the build and test run succeeded.

Microsoft.VisualStudio.Services.Common.VssServiceException: VS800075: The project with id 'vstfs:///Classification/TeamProject/bcf490cf-a965-4d26-999c-8de04067ee1e' does not exist, or you do not have permission to access it.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm working on getting the tests to work on Linux and there is definitely much to do. I may have found a serious bug but haven't verified it yet.

@0x5ECF4ULT

Copy link
Copy Markdown
Author

I'm still working on it but I'm at a roadblock. The calls to the native code are making things complicated. First of all: it isn't all libc but rather libresolv. Second: idk if it's the struct but about 90% of the time i get an utterly useless error saying "No mapping for the Unicode character exists in the target multi-byte code page.". The other 10% are access violations. I had a look at the memory with your HexDump extension method and rn I'm trying to figure out wth I'm looking at.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@0x5ECF4ULT@dnfadmin@SteveSyfuhs