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

New context object close()s old context’s debugout. #52

Closed
FGasper opened this issue Jul 31, 2019 · 2 comments

Comments

@FGasper
Copy link

commented Jul 31, 2019

Related to #39

@FGasper

This comment has been minimized.

Copy link
Author

commented Jul 31, 2019

#include <stdio.h>
#include <unistd.h>
#include <unbound.h>

int main(void) {
    struct ub_ctx* ctx = ub_ctx_create();

    FILE *out_fh = fopen("./bug52-out", "w");
    if (!out_fh) {
        perror("fopen");
        return 1;
    }

    ub_ctx_debugout(ctx, out_fh);

    struct ub_ctx* ctx2 = ub_ctx_create();

    char str[] = "I am Iron Man!\n";

    if ( !fwrite(str, 1, sizeof(str), out_fh) ) {
        perror("fwrite");

        return 1;
    }

    return 0;
}

On my system:

gcc -L/opt/local/lib -I/opt/local/include -lunbound bug52.c -o bug52

… and the error:

> ./bug52
fwrite: Bad file descriptor
@wcawijngaards

This comment has been minimized.

Copy link
Member

commented Aug 1, 2019

See the PR #53 comments, another commit to fix it. Let me know if that really fixes all the codepaths, apart from the reported. Thanks for the report!

jedisct1 added a commit to jedisct1/unbound that referenced this issue Aug 7, 2019
Merge remote-tracking branch 'nlnet/master'
* nlnet/master:
  - Check repinfo in worker_handle_request, if null, drop it.
  - Fix to timeval_add for remaining second in microseconds.
  - Fix to return after failed auth zone http chunk write. - Fix to remove unused test for task_probe existance.
  - Fix NLnetLabs#52 NLnetLabs#53, fix for example fail program.
  - For NLnetLabs#52 NLnetLabs#53, second context does not close logfile override.
  Fix comment.
  - Add hex print of trust anchor pointer to trust anchor file temp   name to make it unique, for libunbound created multiple contexts.
  - Add verbose log message when auth zone file is written, at level 4.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.