Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor PCSC Module: Enhance Error Handling and Restart Logic #309

Merged
merged 10 commits into from
Sep 17, 2024

Conversation

microshine
Copy link
Contributor

This pull request improves the PCSCWatcher by refining error handling and restart mechanisms, boosting stability with PCSC devices. Key updates include:

  • PCSCWatcher Improvements

    • Enhanced error handling.
    • Improved restart logic.
    • Removed unnecessary console.log statements.
  • Server Module Updates

    • Disabled CardReaderService in LocalServer constructor when not needed.
    • Added validation for PKCS#11 path before slot iteration.
  • Script Adjustment

    • Ensured listen runs after setting up event listeners.

- Refactor the PCSCWatcher class to improve error handling and restart logic.
- Add a maximum limit for the number of start method calls and restart attempts.
- Implement delays between restart attempts to prevent excessive resource usage.
- Reset the startCalls counter and restartAttempts counter on successful connection.
This update ensures that the pkcs11 module path is validated before iterating over slots. This change prevents duplicate log messages that were previously caused by invalid paths.
This change ensures that the `listen` method is called after setting the event listeners. Previously, some logs triggered during startup were not being recorded in the log.
setTimeout(() => {
this.start();
this._start();
}, 1e3);
Copy link
Contributor

Choose a reason for hiding this comment

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

Let's use here PCSCWatcher.START_DELAY as well

@microshine microshine merged commit 89043da into master Sep 17, 2024
2 checks passed
@microshine microshine deleted the pcsc-events-dedup branch September 17, 2024 11:10
Copy link

NPM package v1.10.5 has been published 🎉

Sign up for free to 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.

2 participants