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

Add simple, manual test. #130

Closed
15 changes: 15 additions & 0 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,18 @@ add_test(
COMMAND
${CMAKE_CURRENT_BINARY_DIR}/scitokens-gtest
)


#
# Simple, interactive test of the asynchronous interface. Requires
# network access to do anything meaningful.
#
add_executable( scitokens-asynch-test asynch.cc )
target_link_libraries( scitokens-asynch-test SciTokens )

add_test(
NAME
asynch
COMMAND
${CMAKE_CURRENT_BINARY_DIR}/scitokens-asynch-test
)
131 changes: 131 additions & 0 deletions test/asynch.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
#include <stdio.h>
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <stdio.h>

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <stdio.h>

#include <errno.h>
#include <stdlib.h>
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>

#include <sys/select.h>
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <sys/select.h>

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <sys/select.h>

#include <string.h>
#include <unistd.h>
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <unistd.h>
#include <sys/select.h>
#include <unistd.h>

#include <errno.h>
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <errno.h>
#include <sys/select.h>
#include <unistd.h>

#include <string.h>
Comment on lines +7 to +8
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <errno.h>
#include <string.h>


Comment on lines +8 to +9
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <string.h>

Comment on lines +8 to +9
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
#include <string.h>

#include "../src/scitokens.h"

void
void usage(const char *self) {
Comment on lines +12 to +13
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
void
void usage(const char *self) {
void void usage(const char *self) {

fprintf(stderr, "usage: %s encoded-scitoken\n", self);

void
print_claim( SciToken & token, const char * claim ) {
char * value;
char * error;
int rv = scitoken_get_claim_string(
token, claim, & value, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_get_claim_string('%s') failed: %s\n", claim, error );
// exit( -2 );
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
return;
}
fprintf( stdout, "%s = %s\n", claim, value );
}
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
}
fprintf(stdout, "%s = %s\n", claim, value);



int
main( int argc, char ** argv) {
if( argc < 2 ) { usage(argv[0]); exit(-1); }
const char * encoded = argv[1];

Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
int rv;
char * error;
SciToken token;
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
SciToken token;
char *error;


/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/

Comment on lines +41 to +49
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/

// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*

// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(
encoded, & token, NULL, & status, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_start() failed: %s\n", error );
exit( -2 );
Comment on lines +57 to +62
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
rv = scitoken_deserialize_start(
encoded, & token, NULL, & status, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_start() failed: %s\n", error );
exit( -2 );
rv = scitoken_deserialize_start(encoded, &token, NULL, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_start() failed: %s\n", error);
exit(-2);

}
if( status == NULL ) {
fprintf( stderr, "scitoken_deserialize_start() returned a token\n" );
exit( 1 );
Comment on lines +64 to +66
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
if( status == NULL ) {
fprintf( stderr, "scitoken_deserialize_start() returned a token\n" );
exit( 1 );
if (status == NULL) {
fprintf(stderr, "scitoken_deserialize_start() returned a token\n");
exit(1);

}


Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change

do {
fd_set * read_fds = NULL;
rv = scitoken_status_get_read_fd_set( & status, & read_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_read_fd_set() failed: %s\n", error );
exit( -2 );
Comment on lines +71 to +75
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fd_set * read_fds = NULL;
rv = scitoken_status_get_read_fd_set( & status, & read_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_read_fd_set() failed: %s\n", error );
exit( -2 );
fd_set *read_fds = NULL;
rv = scitoken_status_get_read_fd_set(&status, &read_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_read_fd_set() failed: %s\n",
error);
exit(-2);

}

fd_set * write_fds = NULL;
rv = scitoken_status_get_write_fd_set( & status, & write_fds, & error );
if( rv != 0 ) {
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
void
print_claim( SciToken & token, const char * claim ) {
char * value;
char * error;
int rv = scitoken_get_claim_string(
token, claim, & value, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_get_claim_string('%s') failed: %s\n", claim, error );
// exit( -2 );
return;
}
fprintf( stdout, "%s = %s\n", claim, value );
}
int
main( int argc, char ** argv) {
if( argc < 2 ) { usage(argv[0]); exit(-1); }
const char * encoded = argv[1];
int rv;
char * error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(
encoded, & token, NULL, & status, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_start() failed: %s\n", error );
exit( -2 );
}
if( status == NULL ) {
fprintf( stderr, "scitoken_deserialize_start() returned a token\n" );
exit( 1 );
}
do {
fd_set * read_fds = NULL;
rv = scitoken_status_get_read_fd_set( & status, & read_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_read_fd_set() failed: %s\n", error );
exit( -2 );
}
fd_set * write_fds = NULL;
rv = scitoken_status_get_write_fd_set( & status, & write_fds, & error );
if( rv != 0 ) {
void void print_claim(SciToken & token, const char *claim) {
char *value;
char *error;
int rv = scitoken_get_claim_string(token, claim, &value, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_get_claim_string('%s') failed: %s\n",
claim, error);
return;

fprintf( stderr, "scitoken_status_get_write_fd_set() failed: %s\n", error );
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
void
print_claim( SciToken & token, const char * claim ) {
char * value;
char * error;
int rv = scitoken_get_claim_string(
token, claim, & value, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_get_claim_string('%s') failed: %s\n", claim, error );
// exit( -2 );
return;
}
fprintf( stdout, "%s = %s\n", claim, value );
}
int
main( int argc, char ** argv) {
if( argc < 2 ) { usage(argv[0]); exit(-1); }
const char * encoded = argv[1];
int rv;
char * error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(
encoded, & token, NULL, & status, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_start() failed: %s\n", error );
exit( -2 );
}
if( status == NULL ) {
fprintf( stderr, "scitoken_deserialize_start() returned a token\n" );
exit( 1 );
}
do {
fd_set * read_fds = NULL;
rv = scitoken_status_get_read_fd_set( & status, & read_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_read_fd_set() failed: %s\n", error );
exit( -2 );
}
fd_set * write_fds = NULL;
rv = scitoken_status_get_write_fd_set( & status, & write_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_write_fd_set() failed: %s\n", error );
void print_claim(SciToken & token, const char *claim) {
char *value;
char *error;
int rv = scitoken_get_claim_string(token, claim, &value, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_get_claim_string('%s') failed: %s\n",
claim, error);
// exit( -2 );
return;

exit( -2 );
Comment on lines +78 to +82
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fd_set * write_fds = NULL;
rv = scitoken_status_get_write_fd_set( & status, & write_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_write_fd_set() failed: %s\n", error );
exit( -2 );
fd_set *write_fds = NULL;
rv = scitoken_status_get_write_fd_set(&status, &write_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_write_fd_set() failed: %s\n",
error);
exit(-2);

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
void
print_claim( SciToken & token, const char * claim ) {
char * value;
char * error;
int rv = scitoken_get_claim_string(
token, claim, & value, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_get_claim_string('%s') failed: %s\n", claim, error );
// exit( -2 );
return;
}
fprintf( stdout, "%s = %s\n", claim, value );
}
int
main( int argc, char ** argv) {
if( argc < 2 ) { usage(argv[0]); exit(-1); }
const char * encoded = argv[1];
int rv;
char * error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(
encoded, & token, NULL, & status, & error
);
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_start() failed: %s\n", error );
exit( -2 );
}
if( status == NULL ) {
fprintf( stderr, "scitoken_deserialize_start() returned a token\n" );
exit( 1 );
}
do {
fd_set * read_fds = NULL;
rv = scitoken_status_get_read_fd_set( & status, & read_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_read_fd_set() failed: %s\n", error );
exit( -2 );
}
fd_set * write_fds = NULL;
rv = scitoken_status_get_write_fd_set( & status, & write_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_write_fd_set() failed: %s\n", error );
exit( -2 );
void print_claim(SciToken & token, const char *claim) {
char *value;
char *error;
int rv = scitoken_get_claim_string(token, claim, &value, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_get_claim_string('%s') failed: %s\n",
claim, error);
// exit( -2 );
return;

}
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
}
fprintf(stdout, "%s = %s\n", claim, value);
}


Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf(stdout, "%s = %s\n", claim, value);
}

fd_set * except_fds = NULL;
rv = scitoken_status_get_exc_fd_set( & status, & except_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_exc_fd_set() failed: %s\n", error );
Comment on lines +84 to +88
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fd_set * except_fds = NULL;
rv = scitoken_status_get_exc_fd_set( & status, & except_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_exc_fd_set() failed: %s\n", error );
int main(int argc, char **argv) {
if (argc < 2) {
usage(argv[0]);
exit(-1);

exit( -2 );
Comment on lines +85 to +89
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fd_set * except_fds = NULL;
rv = scitoken_status_get_exc_fd_set( & status, & except_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_exc_fd_set() failed: %s\n", error );
exit( -2 );
fd_set *except_fds = NULL;
rv = scitoken_status_get_exc_fd_set(&status, &except_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_exc_fd_set() failed: %s\n",
error);
exit(-2);

Comment on lines +85 to +89
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fd_set * except_fds = NULL;
rv = scitoken_status_get_exc_fd_set( & status, & except_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_exc_fd_set() failed: %s\n", error );
exit( -2 );
int main(int argc, char **argv) {
if (argc < 2) {
usage(argv[0]);
exit(-1);

}

int max_fds;
rv = scitoken_status_get_max_fd( & status, & max_fds, & error );
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
int max_fds;
rv = scitoken_status_get_max_fd( & status, & max_fds, & error );
const char *encoded = argv[1];
int rv;
char *error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(encoded, &token, NULL, &status, &error);

if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_max_fds() failed: %s\n", error );
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
}
int max_fds;
rv = scitoken_status_get_max_fd( & status, & max_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_max_fds() failed: %s\n", error );
const char *encoded = argv[1];
int rv;
char *error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(encoded, &token, NULL, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_start() failed: %s\n", error);
exit(-2);

exit( -2 );
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
int max_fds;
rv = scitoken_status_get_max_fd( & status, & max_fds, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_status_get_max_fds() failed: %s\n", error );
exit( -2 );
const char *encoded = argv[1];
int rv;
char *error;
SciToken token;
/*
// Synchronous.
rv = scitoken_deserialize( encoded, & token, NULL, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize() failed: %s\n", error );
exit( -2 );
}
// scitoken_destroy( token );
*/
// The asynchronous API doesn't work like the synchronous API, and
// requires that deserialization profile be set before it starts
// working. This is probably a bug, but there's another bug where
// the default value for the profile causes a throw. *sigh*
// Asynchronous API.
SciTokenStatus status;
rv = scitoken_deserialize_start(encoded, &token, NULL, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_start() failed: %s\n", error);
exit(-2);

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf( stderr, "scitoken_status_get_max_fds() failed: %s\n", error );
exit( -2 );
fprintf(stderr, "scitoken_deserialize_start() failed: %s\n", error);

}

struct timeval time_out{1, 0};
int s = select( max_fds + 1, read_fds, write_fds, except_fds, & time_out );
if( s == -1 ) {
fprintf( stderr, "select() failed: %s (%d)\n", strerror(errno), errno );
exit( -4 );
} else if( s == 0 ) {
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
}
struct timeval time_out{1, 0};
int s = select( max_fds + 1, read_fds, write_fds, except_fds, & time_out );
if( s == -1 ) {
fprintf( stderr, "select() failed: %s (%d)\n", strerror(errno), errno );
exit( -4 );
} else if( s == 0 ) {
if (status == NULL) {
fprintf(stderr, "scitoken_deserialize_start() returned a token\n");
exit(1);

fprintf( stderr, "select() timed out, checking for progress.\n" );
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
struct timeval time_out{1, 0};
int s = select( max_fds + 1, read_fds, write_fds, except_fds, & time_out );
if( s == -1 ) {
fprintf( stderr, "select() failed: %s (%d)\n", strerror(errno), errno );
exit( -4 );
} else if( s == 0 ) {
fprintf( stderr, "select() timed out, checking for progress.\n" );
if (status == NULL) {
fprintf(stderr, "scitoken_deserialize_start() returned a token\n");
exit(1);

}

fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
struct timeval time_out{1, 0};
int s = select( max_fds + 1, read_fds, write_fds, except_fds, & time_out );
if( s == -1 ) {
fprintf( stderr, "select() failed: %s (%d)\n", strerror(errno), errno );
exit( -4 );
} else if( s == 0 ) {
fprintf( stderr, "select() timed out, checking for progress.\n" );
}
fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
if (status == NULL) {
fprintf(stderr, "scitoken_deserialize_start() returned a token\n");
exit(1);

rv = scitoken_deserialize_continue( & token, & status, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_continue() failed: %s\n", error );
exit( -3 );
Comment on lines +112 to +116
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
rv = scitoken_deserialize_continue( & token, & status, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_continue() failed: %s\n", error );
exit( -3 );
fprintf(stderr, "Calling scitoken_deserialize_continue()...\n");
rv = scitoken_deserialize_continue(&token, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_continue() failed: %s\n",
error);
exit(-3);

}
} while( status != NULL );

Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved

print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");

scitoken_destroy( token );
Todd-L-Miller marked this conversation as resolved.
Show resolved Hide resolved
return 0;
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
rv = scitoken_deserialize_continue( & token, & status, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_continue() failed: %s\n", error );
exit( -3 );
}
} while( status != NULL );
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy( token );
return 0;
do {
fd_set *read_fds = NULL;
rv = scitoken_status_get_read_fd_set(&status, &read_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_read_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *write_fds = NULL;
rv = scitoken_status_get_write_fd_set(&status, &write_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_write_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *except_fds = NULL;
rv = scitoken_status_get_exc_fd_set(&status, &except_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_exc_fd_set() failed: %s\n",
error);
exit(-2);
}
int max_fds;
rv = scitoken_status_get_max_fd(&status, &max_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_max_fds() failed: %s\n",
error);
exit(-2);
}
struct timeval time_out {
1, 0
};
int s =
select(max_fds + 1, read_fds, write_fds, except_fds, &time_out);
if (s == -1) {
fprintf(stderr, "select() failed: %s (%d)\n", strerror(errno),
errno);
exit(-4);
} else if (s == 0) {
fprintf(stderr, "select() timed out, checking for progress.\n");
}
fprintf(stderr, "Calling scitoken_deserialize_continue()...\n");
rv = scitoken_deserialize_continue(&token, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_continue() failed: %s\n",
error);
exit(-3);
}
} while (status != NULL);
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy(token);
return 0;
}

Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
rv = scitoken_deserialize_continue( & token, & status, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_continue() failed: %s\n", error );
exit( -3 );
}
} while( status != NULL );
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy( token );
return 0;
do {
fd_set *read_fds = NULL;
rv = scitoken_status_get_read_fd_set(&status, &read_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_read_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *write_fds = NULL;
rv = scitoken_status_get_write_fd_set(&status, &write_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_write_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *except_fds = NULL;
rv = scitoken_status_get_exc_fd_set(&status, &except_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_exc_fd_set() failed: %s\n",
error);
exit(-2);
}
int max_fds;
rv = scitoken_status_get_max_fd(&status, &max_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_max_fds() failed: %s\n",
error);
exit(-2);
}
struct timeval time_out {
1, 0
};
int s =
select(max_fds + 1, read_fds, write_fds, except_fds, &time_out);
if (s == -1) {
fprintf(stderr, "select() failed: %s (%d)\n", strerror(errno),
errno);
exit(-4);
} else if (s == 0) {
fprintf(stderr, "select() timed out, checking for progress.\n");
}
fprintf(stderr, "Calling scitoken_deserialize_continue()...\n");
rv = scitoken_deserialize_continue(&token, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_continue() failed: %s\n",
error);
exit(-3);
}
} while (status != NULL);
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy(token);
return 0;
}

}
Copy link
Contributor

Choose a reason for hiding this comment

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

[lint] reported by reviewdog 🐶

Suggested change
fprintf( stderr, "Calling scitoken_deserialize_continue()...\n" );
rv = scitoken_deserialize_continue( & token, & status, & error );
if( rv != 0 ) {
fprintf( stderr, "scitoken_deserialize_continue() failed: %s\n", error );
exit( -3 );
}
} while( status != NULL );
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy( token );
return 0;
}
do {
fd_set *read_fds = NULL;
rv = scitoken_status_get_read_fd_set(&status, &read_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_read_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *write_fds = NULL;
rv = scitoken_status_get_write_fd_set(&status, &write_fds, &error);
if (rv != 0) {
fprintf(stderr,
"scitoken_status_get_write_fd_set() failed: %s\n",
error);
exit(-2);
}
fd_set *except_fds = NULL;
rv = scitoken_status_get_exc_fd_set(&status, &except_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_exc_fd_set() failed: %s\n",
error);
exit(-2);
}
int max_fds;
rv = scitoken_status_get_max_fd(&status, &max_fds, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_status_get_max_fds() failed: %s\n",
error);
exit(-2);
}
struct timeval time_out {
1, 0
};
int s =
select(max_fds + 1, read_fds, write_fds, except_fds, &time_out);
if (s == -1) {
fprintf(stderr, "select() failed: %s (%d)\n", strerror(errno),
errno);
exit(-4);
} else if (s == 0) {
fprintf(stderr, "select() timed out, checking for progress.\n");
}
fprintf(stderr, "Calling scitoken_deserialize_continue()...\n");
rv = scitoken_deserialize_continue(&token, &status, &error);
if (rv != 0) {
fprintf(stderr, "scitoken_deserialize_continue() failed: %s\n",
error);
exit(-3);
}
} while (status != NULL);
print_claim(token, "ver");
print_claim(token, "aud");
print_claim(token, "iss");
// Not a string.
// print_claim(token, "exp");
// Not a string.
// print_claim(token, "iat");
// Not a string.
// print_claim(token, "nbf");
print_claim(token, "jti");
scitoken_destroy(token);
return 0;
}

Loading