[dovecot-cvs] dovecot/src/lib-auth auth-client.h, 1.5,
1.6 auth-server-request.c, 1.10, 1.11
cras at procontrol.fi
cras at procontrol.fi
Mon May 31 21:04:49 EEST 2004
- Previous message: [dovecot-cvs] dovecot/src/auth auth-client-interface.h, 1.5,
1.6 mech.c, 1.23, 1.24 mech.h, 1.16, 1.17
- Next message: [dovecot-cvs] dovecot/src/login-common client-common.h, 1.5,
1.6 main.c, 1.16, 1.17 master.c, 1.8, 1.9
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /home/cvs/dovecot/src/lib-auth
In directory talvi:/tmp/cvs-serv4696/src/lib-auth
Modified Files:
auth-client.h auth-server-request.c
Log Message:
Added %l, %r and %P variables and mail_log_prefix setting.
Index: auth-client.h
===================================================================
RCS file: /home/cvs/dovecot/src/lib-auth/auth-client.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- a/auth-client.h 30 May 2004 01:40:47 -0000 1.5
+++ b/auth-client.h 31 May 2004 18:04:47 -0000 1.6
@@ -1,6 +1,7 @@
#ifndef __AUTH_CLIENT_H
#define __AUTH_CLIENT_H
+#include "network.h"
#include "../auth/auth-client-interface.h"
struct auth_client;
@@ -12,6 +13,17 @@
unsigned int advertise:1;
};
+struct auth_request_info {
+ const char *mech;
+ const char *protocol;
+ enum auth_client_request_new_flags flags;
+
+ struct ip_addr local_ip, remote_ip;
+
+ const unsigned char *initial_resp_data;
+ size_t initial_resp_size;
+};
+
/* reply is NULL if auth connection died */
typedef void auth_request_callback_t(struct auth_request *request,
struct auth_client_request_reply *reply,
@@ -38,10 +50,7 @@
happens for the request. */
struct auth_request *
auth_client_request_new(struct auth_client *client,
- const char *mech, const char *protocol,
- enum auth_client_request_new_flags flags,
- const unsigned char *initial_resp_data,
- size_t initial_resp_size,
+ const struct auth_request_info *request_info,
auth_request_callback_t *callback, void *context,
const char **error_r);
Index: auth-server-request.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-auth/auth-server-request.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- a/auth-server-request.c 30 May 2004 04:50:06 -0000 1.10
+++ b/auth-server-request.c 31 May 2004 18:04:47 -0000 1.11
@@ -11,10 +11,11 @@
struct auth_request {
struct auth_server_connection *conn;
+ unsigned int id;
+
char *mech, *protocol;
enum auth_client_request_new_flags flags;
-
- unsigned int id;
+ struct ip_addr local_ip, remote_ip;
unsigned char *initial_resp_data;
size_t initial_resp_size;
@@ -73,6 +74,7 @@
{
struct auth_client_request_new auth_request;
buffer_t *buf;
+ size_t size;
int ret;
memset(&auth_request, 0, sizeof(auth_request));
@@ -80,10 +82,20 @@
auth_request.id = request->id;
auth_request.flags = request->flags;
+ if (request->local_ip.family == request->remote_ip.family)
+ auth_request.ip_family = request->local_ip.family;
+
t_push();
buf = buffer_create_dynamic(pool_datastack_create(), 256, (size_t)-1);
buffer_set_used_size(buf, sizeof(auth_request));
+ if (auth_request.ip_family != 0) {
+ size = IPADDR_IS_V4(&request->local_ip) ? 4 :
+ sizeof(request->local_ip.ip);
+ buffer_append(buf, &request->local_ip.ip, size);
+ buffer_append(buf, &request->remote_ip.ip, size);
+ }
+
auth_request.mech_idx =
buffer_get_used_size(buf) - sizeof(auth_request);
buffer_append(buf, request->mech, strlen(request->mech)+1);
@@ -236,32 +248,34 @@
struct auth_request *
auth_client_request_new(struct auth_client *client,
- const char *mech, const char *protocol,
- enum auth_client_request_new_flags flags,
- const unsigned char *initial_resp_data,
- size_t initial_resp_size,
+ const struct auth_request_info *request_info,
auth_request_callback_t *callback, void *context,
const char **error_r)
{
struct auth_server_connection *conn;
struct auth_request *request;
- conn = auth_server_connection_find_mech(client, mech, error_r);
+ conn = auth_server_connection_find_mech(client, request_info->mech,
+ error_r);
if (conn == NULL)
return NULL;
request = i_new(struct auth_request, 1);
request->conn = conn;
- request->mech = i_strdup(mech);
- request->protocol = i_strdup(protocol);
- request->flags = flags;
+ request->mech = i_strdup(request_info->mech);
+ request->protocol = i_strdup(request_info->protocol);
+ request->flags = request_info->flags;
+ request->local_ip = request_info->local_ip;
+ request->remote_ip = request_info->remote_ip;
request->id = ++client->request_id_counter;
- if (initial_resp_size != 0) {
- request->initial_resp_size = initial_resp_size;
- request->initial_resp_data = i_malloc(initial_resp_size);
- memcpy(request->initial_resp_data, initial_resp_data,
- initial_resp_size);
+ if (request_info->initial_resp_size != 0) {
+ request->initial_resp_size = request_info->initial_resp_size;
+ request->initial_resp_data =
+ i_malloc(request_info->initial_resp_size);
+ memcpy(request->initial_resp_data,
+ request_info->initial_resp_data,
+ request_info->initial_resp_size);
}
if (request->id == 0) {
- Previous message: [dovecot-cvs] dovecot/src/auth auth-client-interface.h, 1.5,
1.6 mech.c, 1.23, 1.24 mech.h, 1.16, 1.17
- Next message: [dovecot-cvs] dovecot/src/login-common client-common.h, 1.5,
1.6 main.c, 1.16, 1.17 master.c, 1.8, 1.9
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the dovecot-cvs
mailing list