Hi,
first of all, thanks for the help.
The profile.c if from the lasso module ->
https://github.com/adieu/lasso/blob/master/lasso/saml-2.0/profile.c
We need to find which lasso function in SOGoSAML2Session.m (I
assume, it may be another file) is called and make that error, then
check the arguments given.
I try to find the mentioned function with this changes:
--- SOGoSAML2Session.m ---
- (id) _initWithDump: (NSDictionary *) saml2Dump
inContext: (WOContext *) context
{
lasso_error_t rc;
LassoServer *server;
LassoProfile *profile;
const gchar *dump;
if ((self = [self init]))
{
server = [SOGoSAML2Session lassoServerInContext: context];
lassoLogin = lasso_login_new (server);
if (saml2Dump)
{
profile = LASSO_PROFILE (lassoLogin);
ASSIGN (login, [saml2Dump objectForKey: @"login"]);
ASSIGN (identifier, [saml2Dump objectForKey: @"identifier"]);
ASSIGN (assertion, [saml2Dump objectForKey: @"assertion"]);
ASSIGN(identity, [saml2Dump objectForKey: @"identity"]);
dump = [identity UTF8String];
if (dump)
{
NSLog(@"_initWithDump/identity/pre: %@", dump);
lasso_profile_set_identity_from_dump (profile, dump);
NSLog(@"_initWithDump/identity/pore: %@", dump);
}
---
---
Jun 28 09:00:30 sogod [831]: |SOGo| request took 0.102924 seconds to execute
Jun 28 09:00:30 sogod [831]: 79.140.187.148, 172.27.11.107 "POST
/SOGo/saml2-signon-post HTTP/1.1" 302 0/12977 0.105 - - 692K - 12
Jun 28 09:00:30 sogod [831]: |SOGo| starting method 'GET' on uri
'/SOGo//claas.hilbre...@linum.com'
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7439d35 in objc_msg_lookup () from
/lib/x86_64-linux-gnu/libobjc.so.4
(gdb) bt
#0 0x00007ffff7439d35 in objc_msg_lookup () at
/lib/x86_64-linux-gnu/libobjc.so.4
#1 0x00007ffff6dc45cc in GSPrivateFormat
(s=s@entry=0x7fffffffa9f0, format=format@entry=0x7fffffffaa30,
ap=ap@entry=0x7fffffffbae0, locale=locale@entry=0x0) at
./Source/GSFormat.m:1869
#2 0x00007ffff6de9d69 in -[GSPlaceholderString
initWithFormat:locale:arguments:]
(self=0x5555556ea340, _cmd=<optimized out>, format=<optimized
out>, locale=0x0, argList=0x7fffffffbae0) at ./Source/GSString.m:1642
#3 0x00007ffff6ec0674 in NSLogv (format=0x7ffff7fbf820
<_OBJC_INSTANCE_24.9>, args=0x7fffffffbae0) at ./Source/NSLog.m:425
#4 0x00007ffff6ec09e9 in NSLog (format=<optimized out>) at
./Source/NSLog.m:297
#5 0x00007ffff7f3e7ed in -[SOGoSAML2Session _initWithDump:inContext:]
(self=0x555555ddd350, _cmd=0x7ffff7fc01b0
<_OBJC_SELECTOR_TABLE+688>, saml2Dump=0x555555746610,
context=0x555555ddce30)
at ./SoObjects/SOGo/SOGoSAML2Session.m:372
#6 0x00007ffff7f3eb31 in +[SOGoSAML2Session _SAML2SessionWithDump:inContext:]
(self=0x7ffff7fbfd80 <_OBJC_Class_SOGoSAML2Session>,
_cmd=0x7ffff7fc01d0 <_OBJC_SELECTOR_TABLE+720>,
saml2Dump=0x555555746610, context=0x555555ddce30)
at ./SoObjects/SOGo/SOGoSAML2Session.m:413
#7 0x00007ffff7f3ec69 in +[SOGoSAML2Session
SAML2SessionWithIdentifier:inContext:]
---