diff options
author | Simo Sorce <simo@redhat.com> | 2012-02-23 17:57:58 -0500 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2012-04-05 11:20:33 -0400 |
commit | 34d8ca04e148263ffd4860718652eb474087f848 (patch) | |
tree | 10af3408150ec6dc1515d88f94c63afccec3245d /proxy/src/gp_workers.c | |
parent | 99d24402236ab621f8c03fdba49e7a75e38263a5 (diff) | |
download | gss-proxy-34d8ca04e148263ffd4860718652eb474087f848.tar.gz gss-proxy-34d8ca04e148263ffd4860718652eb474087f848.tar.xz gss-proxy-34d8ca04e148263ffd4860718652eb474087f848.zip |
creds: add code to import krb5 credentials based on configuration.
Diffstat (limited to 'proxy/src/gp_workers.c')
-rw-r--r-- | proxy/src/gp_workers.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/proxy/src/gp_workers.c b/proxy/src/gp_workers.c index 1a58136..0e388d6 100644 --- a/proxy/src/gp_workers.c +++ b/proxy/src/gp_workers.c @@ -428,11 +428,19 @@ static void *gp_worker_main(void *pvt) static void gp_handle_query(struct gp_workers *w, struct gp_query *q) { + struct gp_service *gpsvc; uint8_t *buffer; size_t buflen; int ret; - ret = gp_rpc_process_call(w->gpctx, + /* find service */ + gpsvc = gp_creds_match_conn(w->gpctx, q->conn); + if (!gpsvc) { + q->status = GP_QUERY_ERR; + return; + } + + ret = gp_rpc_process_call(w->gpctx, gpsvc, q->buffer, q->buflen, &buffer, &buflen); if (ret) { |