bindings/ruby/rblm-proxy.c
author Mikael Hallendal <micke@imendio.com>
Thu, 10 Apr 2008 18:59:55 +0200
changeset 387 39e105c72094
parent 386 d4549fc19801
permissions -rw-r--r--
Ruby bindings can connect with SSL
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
374
6fb30156b968 Added files for LmSSL and LmProxy to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents:
diff changeset
     1
#include "rblm.h"
6fb30156b968 Added files for LmSSL and LmProxy to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents:
diff changeset
     2
375
1f0f637e3ae8 Added LmProxyType to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 374
diff changeset
     3
VALUE lm_cProxy;
1f0f637e3ae8 Added LmProxyType to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 374
diff changeset
     4
386
d4549fc19801 Added LmConnection::send to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 382
diff changeset
     5
LmProxy *
376
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
     6
rb_lm_proxy_from_ruby_object (VALUE obj)
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
     7
{
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
     8
	LmProxy *proxy;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
     9
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    10
	if (!rb_lm__is_kind_of (obj, lm_cProxy)) {
382
bc887affb431 Implemented ssl_initialize for LmSSL ruby bindings.
Mikael Hallendal <micke@imendio.com>
parents: 380
diff changeset
    11
		rb_raise (rb_eTypeError, "not a LmProxy");
376
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    12
	}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    13
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    14
	Data_Get_Struct (obj, LmProxy, proxy);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    15
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    16
	return proxy;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    17
}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    18
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    19
void
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    20
proxy_free (LmProxy *proxy)
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    21
{
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    22
	lm_proxy_unref (proxy);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    23
}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    24
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    25
VALUE
387
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    26
rb_lm_proxy_to_ruby_object (LmProxy *proxy)
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    27
{
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    28
	if (proxy) {
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    29
		lm_proxy_ref (proxy);
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    30
		return Data_Wrap_Struct (lm_cProxy, NULL, 
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    31
					 proxy_free, proxy);
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    32
	} else {
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    33
		return Qnil;
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    34
	}
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    35
}
39e105c72094 Ruby bindings can connect with SSL
Mikael Hallendal <micke@imendio.com>
parents: 386
diff changeset
    36
VALUE
376
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    37
proxy_allocate (VALUE klass)
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    38
{
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    39
	return Data_Wrap_Struct (klass, NULL, proxy_free, NULL);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    40
}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    41
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    42
VALUE
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    43
proxy_initialize (int argc, VALUE *argv, VALUE self)
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    44
{
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    45
	LmProxy *proxy;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    46
	VALUE    type, server, port;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    47
	char    *server_str = NULL;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    48
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    49
	rb_scan_args (argc, argv, "12", &type, &server, &port);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    50
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    51
	proxy = lm_proxy_new (FIX2INT (type));
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    52
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    53
	if (!NIL_P (server)) {
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    54
		if (!rb_respond_to (server, rb_intern ("to_s"))) {
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    55
			rb_raise (rb_eArgError, "server should respond to to_s");
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    56
		} else {
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    57
			VALUE str_val = rb_funcall (server, rb_intern ("to_s"), 0);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    58
			lm_proxy_set_server (proxy, StringValuePtr (str_val));
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    59
		}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    60
	}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    61
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    62
	if (!NIL_P (port)) {
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    63
		lm_proxy_set_port (proxy, NUM2UINT (port));
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    64
	}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    65
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    66
	DATA_PTR (self) = proxy;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    67
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    68
	return self;
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    69
}
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
    70
377
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    71
VALUE
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    72
proxy_get_type (VALUE self)
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    73
{
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    74
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    75
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    76
	return INT2FIX (lm_proxy_get_type (proxy));
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    77
}
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    78
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    79
VALUE
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    80
proxy_set_type (VALUE self, VALUE type)
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    81
{
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    82
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    83
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    84
	lm_proxy_set_type (proxy, FIX2INT (type));
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    85
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    86
	return Qnil;
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    87
}
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
    88
378
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    89
VALUE
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    90
proxy_get_server (VALUE self)
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    91
{
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    92
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    93
379
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
    94
	if (lm_proxy_get_server (proxy)) {
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
    95
		return rb_str_new2 (lm_proxy_get_server (proxy));
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
    96
	}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
    97
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
    98
	return Qnil;
378
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
    99
}
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   100
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   101
VALUE
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   102
proxy_set_server (VALUE self, VALUE server)
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   103
{
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   104
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   105
	VALUE    str_val;
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   106
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   107
	if (!rb_respond_to (server, rb_intern ("to_s"))) {
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   108
		rb_raise (rb_eArgError, "server should respond to to_s");
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   109
	} 
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   110
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   111
	str_val = rb_funcall (server, rb_intern ("to_s"), 0);
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   112
	lm_proxy_set_server (proxy, StringValuePtr (str_val));
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   113
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   114
	return Qnil;
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   115
}
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   116
379
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   117
VALUE 
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   118
proxy_get_port (VALUE self)
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   119
{
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   120
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   121
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   122
	return UINT2NUM (lm_proxy_get_port (proxy));
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   123
}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   124
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   125
VALUE
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   126
proxy_set_port (VALUE self, VALUE port)
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   127
{
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   128
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   129
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   130
	lm_proxy_set_port (proxy, NUM2UINT (port));
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   131
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   132
	return Qnil;
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   133
}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   134
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   135
VALUE
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   136
proxy_get_username (VALUE self)
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   137
{
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   138
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   139
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   140
	if (lm_proxy_get_username (proxy)) {
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   141
		return rb_str_new2 (lm_proxy_get_username (proxy));
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   142
	}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   143
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   144
	return Qnil;
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   145
}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   146
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   147
VALUE
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   148
proxy_set_username (VALUE self, VALUE username)
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   149
{
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   150
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   151
	VALUE    str_val;
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   152
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   153
	if (!rb_respond_to (username, rb_intern ("to_s"))) {
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   154
		rb_raise (rb_eArgError, "username should respond to to_s");
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   155
	} 
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   156
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   157
	str_val = rb_funcall (username, rb_intern ("to_s"), 0);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   158
	lm_proxy_set_username (proxy, StringValuePtr (str_val));
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   159
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   160
	return Qnil;
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   161
}
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   162
380
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   163
VALUE
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   164
proxy_get_password (VALUE self)
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   165
{
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   166
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   167
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   168
	if (lm_proxy_get_password (proxy)) {
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   169
		return rb_str_new2 (lm_proxy_get_password (proxy));
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   170
	}
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   171
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   172
	return Qnil;
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   173
}
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   174
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   175
VALUE
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   176
proxy_set_password (VALUE self, VALUE password)
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   177
{
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   178
	LmProxy *proxy = rb_lm_proxy_from_ruby_object (self);
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   179
	VALUE    str_val;
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   180
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   181
	if (!rb_respond_to (password, rb_intern ("to_s"))) {
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   182
		rb_raise (rb_eArgError, "password should respond to to_s");
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   183
	} 
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   184
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   185
	str_val = rb_funcall (password, rb_intern ("to_s"), 0);
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   186
	lm_proxy_set_password (proxy, StringValuePtr (str_val));
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   187
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   188
	return Qnil;
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   189
}
379
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   190
374
6fb30156b968 Added files for LmSSL and LmProxy to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents:
diff changeset
   191
extern void
6fb30156b968 Added files for LmSSL and LmProxy to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents:
diff changeset
   192
Init_lm_proxy (VALUE lm_mLM)
375
1f0f637e3ae8 Added LmProxyType to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 374
diff changeset
   193
{
1f0f637e3ae8 Added LmProxyType to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 374
diff changeset
   194
	lm_cProxy = rb_define_class_under (lm_mLM, "Proxy", rb_cObject);
376
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
   195
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
   196
	rb_define_alloc_func (lm_cProxy, proxy_allocate);
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
   197
d54d6310c136 Implemented allocate and initialize for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 375
diff changeset
   198
	rb_define_method (lm_cProxy, "initialize", proxy_initialize, -1);
377
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
   199
	rb_define_method (lm_cProxy, "type", proxy_get_type, 0);
52b0968e0235 Added type and type= for LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 376
diff changeset
   200
	rb_define_method (lm_cProxy, "type=", proxy_set_type, 1);
378
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   201
	rb_define_method (lm_cProxy, "server", proxy_get_server, 0);
f757ef1a9d72 Added server and server= to LmProxy in the ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 377
diff changeset
   202
	rb_define_method (lm_cProxy, "server=", proxy_set_server, 1);
379
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   203
	rb_define_method (lm_cProxy, "port", proxy_get_port, 0);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   204
	rb_define_method (lm_cProxy, "port=", proxy_set_port, 1);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   205
	rb_define_method (lm_cProxy, "username", proxy_get_username, 0);
bc14607827e8 Added port, port=, username, username= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 378
diff changeset
   206
	rb_define_method (lm_cProxy, "username=", proxy_set_username, 1);
380
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   207
	rb_define_method (lm_cProxy, "password", proxy_get_password, 0);
56e6d95df49e Added password and password= to LmProxy ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 379
diff changeset
   208
	rb_define_method (lm_cProxy, "password=", proxy_set_password, 1);
375
1f0f637e3ae8 Added LmProxyType to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents: 374
diff changeset
   209
}
374
6fb30156b968 Added files for LmSSL and LmProxy to ruby bindings
Mikael Hallendal <micke@imendio.com>
parents:
diff changeset
   210