Switch to DuckDuckGo Search
   December 5, 2008  
< | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | >


NOTICE: This channel is no longer actively logged.

Toggle Join/Part | bottom
[00:33:15] *** taltamir has joined #belenix
[00:51:36] *** taltamir has quit IRC
[00:51:39] *** taltamir has joined #belenix
[01:29:40] *** taltamir has quit IRC
[02:55:38] *** taltamir has joined #belenix
[02:56:44] *** taltamir has quit IRC
[02:56:52] *** taltamir has joined #belenix
[07:29:01] *** anilg has joined #belenix
[07:29:01] *** ChanServ sets mode: +o anilg
[08:40:25] *** anil1 has joined #belenix
[08:52:33] *** anilg has quit IRC
[09:13:54] *** anil1 is now known as anilg
[09:42:44] *** anilg has quit IRC
[09:43:30] *** john has joined #belenix
[09:43:58] *** john is now known as Guest25764
[09:45:56] *** Guest25764 has quit IRC
[09:58:21] *** anilg has joined #belenix
[09:58:28] *** ChanServ sets mode: +o anilg
[10:22:12] *** anilg has quit IRC
[10:30:05] *** taltamir has quit IRC
[12:05:56] *** anilg has joined #belenix
[12:05:56] *** ChanServ sets mode: +o anilg
[12:09:24] *** anilg has quit IRC
[12:13:50] *** anilg has joined #belenix
[12:13:50] *** ChanServ sets mode: +o anilg
[12:44:26] *** anilg has quit IRC
[12:45:48] *** anilg has joined #belenix
[12:45:48] *** ChanServ sets mode: +o anilg
[16:51:50] *** anilg has quit IRC
[17:05:56] *** taltamir has joined #belenix
[17:23:59] *** moinakg has joined #belenix
[17:24:13] *** codestr0m has joined #belenix
[17:29:36] *** moinakg has quit IRC
[17:30:05] *** moinakg has joined #belenix
[17:31:49] *** moinakg has quit IRC
[17:32:30] *** moinakg has joined #belenix
[17:37:46] <codestr0m> moinakg: is mibbit more stable?
[17:37:55] <moinakg> appears to be
[17:38:26] <codestr0m> I think I'm on my way to having the links up
[17:38:40] <codestr0m> bge1: flags=201000842<BROADCAST,RUNNING,MULTICAST,IPv4,CoS> mtu 1500 index 6
[17:38:40] <codestr0m> inet 145.52.251.79 netmask fffffe00 broadcast 145.52.251.255
[17:38:58] <codestr0m> sadly.. I still get dlmgmtd -d
[17:38:58] <codestr0m> dlmgmt_init_privileges() failed: Not owner
[17:39:51] <moinakg> truss output
[17:40:59] <moinakg> ?
[17:41:07] <codestr0m> truss -fa -t exec dlmgmtd -d
[17:41:08] <codestr0m> 1226:sd.execve("/sbin/dlmgmtd", 0xFFFFFD7FFFDFEB48, 0xFFFFFD7FFFDFEB60) argc = 2
[17:41:08] <codestr0m> 1226: argv: dlmgmtd -d
[17:41:08] <codestr0m> dlmgmt_init_privileges() failed: Not owner
[17:41:19] <codestr0m> I started to look at the code, but it disappears into libc
[17:41:35] <codestr0m> and I was messing with compiling that with debugging, but need to move the closed bins on the box
[17:42:18] <codestr0m> hits this line and that's it
[17:42:18] <codestr0m> 19978         if (__init_daemon_priv( 0x0001 | 0x0008 ,  15 ,
[17:42:18] <codestr0m> 19979              3 ,  ( ( const char * ) "sys_dl_config" ),  ( ( const char *      ) "sys_config" ),  0L
[17:42:39] <codestr0m> ) == -1) {
[17:42:55] <codestr0m> returns -1 and exits
[17:44:00] <codestr0m> I think it has something to do with libdoor.. (just a guess and looking into it)
[17:46:11] <codestr0m> moinakg: ^
[17:49:30] <moinakg> 544 ret = setppriv(PRIV_SET, inheritable, nset);
[17:49:45] <moinakg> this line in that func ccan be failing
[17:50:33] <moinakg> 492 nset = priv_vlist(pa); 493 494 va_end(pa); 495 496 if (nset == NULL) 497 return (-1);
[17:50:38] <moinakg> oops
[17:52:18] <moinakg> try this
[17:53:16] <moinakg> dtrace -n 'pid$target::priv_vlist:return { trace(arg1); }' -c 'dlmgmtd -d'
[17:53:50] <moinakg> it will print the return value from that func ... it is an error if that is NULL
[17:54:28] <codestr0m> http://rafb.net/p/vaArjX31.html
[17:54:32] <codestr0m> time for me to learn dtrace
[17:55:35] <codestr0m> dlmgmt_init_privileges() failed: Not owner dtrace: pid 1764 has exited CPU ID FUNCTION:NAME 0 58494 priv_vlist:return 0
[17:55:44] <moinakg> so that's it
[17:56:07] <codestr0m> I hope it makes more sense to you than me.
[17:57:06] <codestr0m> I know that's the function which is failing and I also know which line
[17:57:30] <codestr0m> however.. if I don't compile with debugging I can't get the argv ... to see what's being passed in to libc
[17:59:44] <moinakg> dtrace -n 'pid$target::__priv_getdata:return { trace(arg1); }' -c 'dlmgmtd -d'
[18:02:43] <codestr0m> moinakg: http://rafb.net/p/uJuFMl55.html
[18:03:31] <codestr0m> CPU ID FUNCTION:NAME
[18:03:31] <codestr0m> 0 58494 __priv_getdata:return -2748793944048
[18:04:21] <moinakg> hmm so that is returning some pointer, then try this:
[18:06:07] <moinakg> dtrace -n 'pid$target::libc_malloc:entry { trace(arg0); } pid$target::libc_malloc:return { trace(arg1); }' -c 'dlmgmtd -d'
[18:06:45] <codestr0m> http://rafb.net/p/q1proL66.html
[18:07:46] <moinakg> So the failure is narrowed done to this function
[18:07:49] <moinakg> http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libc/port/gen/privlib.c#priv_vlist
[18:07:54] <moinakg> in the while loop
[18:10:10] <codestr0m> moinakg: I don't think the problem is in libc.. I'm pretty sure it's some configuration issue on my end
[18:10:50] <moinakg> libc_malloc is working fine and returning pointers
[18:11:22] <moinakg> you need to trace return value for priv_addset since that is checked in the while loop
[18:11:55] <moinakg> and then dig further
[18:11:58] <codestr0m> moinakg: using similar dtrace or?
[18:12:46] <codestr0m> dtrace -n 'pid$target::priv_addset:return { trace(arg1); }' -c 'dlmgmtd -d'
[18:12:46] <codestr0m> CPU ID FUNCTION:NAME
[18:12:47] <codestr0m> 0 58494 priv_addset:return 4294967295
[18:13:11] <moinakg> so that is a negative value!
[18:13:17] <moinakg> that func is failing
[18:13:18] <moinakg> dtrace -n 'pid$target::priv_addset:entry { trace(copyinstr(arg1)); }' -c 'dlmgtd -d'
[18:13:53] <codestr0m> moinakg: typo. and
[18:13:54] <codestr0m> CPU ID FUNCTION:NAME
[18:13:54] <codestr0m> 0 58494 priv_addset:entry sys_dl_config
[18:14:46] <codestr0m> dtrace -n 'pid$target:sys_dl_config:return { trace(arg1); }' -c 'dlmgmtd -d'
[18:14:46] <codestr0m> dtrace: invalid probe specifier pid$target:sys_dl_config:return { trace(arg1); }: probe description :pid1969:sys_dl_config:return does not match any probes
[18:15:54] <moinakg> codestr0m: priv_addset
[18:16:24] <moinakg> ah sys_dl_config is the name of a privilege not a func
[18:16:50] <moinakg> ppriv -l will list available privileges for that user
[18:17:56] <codestr0m> http://rafb.net/p/EGuLUi62.html
[18:18:01] <codestr0m> bingo.. missing priv?
[18:18:25] <moinakg> root on my machine does not list that priv!
[18:18:26] <codestr0m> I'm as root, but I guess doesn't matter
[18:18:45] <codestr0m> let me check osol
[18:19:15] <codestr0m> nope. osol doesn't have either
[18:19:35] <moinakg> http://mail.opensolaris.org/pipermail/opensolaris-arc/2008-July/010151.html
[18:19:55] <moinakg> trace return value for priv_getbyname
[18:21:32] <codestr0m> dtrace -n 'pid$target:priv_getbyname:return { trace(arg1); }' -c 'dlmgmtd -d'
[18:21:32] <codestr0m> dtrace: invalid probe specifier pid$target:priv_getbyname:return { trace(arg1); }: probe description :pid2004:priv_getbyname:return does not match any probes
[18:23:31] <codestr0m> moinakg: is that what you meant?
[18:29:47] <moinakg> strange
[18:30:33] <moinakg> nm /lib/libc.so.1 | grep priv_getby 0005fcf0 T __priv_getbyname 0005fee5 T __priv_getbynum 0005fdb1 W _priv_getbyname 0005ff10 W _priv_getbynum 0005fdb1 T priv_getbyname 0005ff10 T priv_getbynum
[18:30:39] <moinakg> on my machine
[18:33:13] <codestr0m> moinakg: if you're using gnu nm
[18:33:14] <codestr0m> http://rafb.net/p/j8wo9X52.html
[18:34:06] <moinakg> [6195] | 392432| 193|FUNC |GLOB |3 |15 |__priv_getbyname
[18:34:13] <moinakg> [7032] | 392933| 36|FUNC |GLOB |3 |15 |__priv_getbynum
[18:34:18] <moinakg> [6911] | 392625| 100|FUNC |WEAK |3 |15 |_priv_getbyname
[18:34:22] <moinakg> [6911] | 392625| 100|FUNC |WEAK |3 |15 |_priv_getbyname
[18:34:29] <moinakg> [6911] | 392625| 100|FUNC |WEAK |3 |15 |_priv_getbyname
[18:34:34] <moinakg> [6911] | 392625| 100|FUNC |WEAK |3 |15 |_priv_getbyname
[18:34:39] <moinakg> with /usr/bin/nm
[18:35:03] <moinakg> so that func is present
[18:35:26] <moinakg> I think you have a typo
[18:35:39] <moinakg> missing ':'
[18:40:42] <codestr0m> moinakg: good catch
[18:40:43] <codestr0m> CPU ID FUNCTION:NAME
[18:40:43] <codestr0m> 0 58494 priv_getbyname:return 4294967295
[18:45:07] *** dililikima has joined #belenix
[18:45:18] *** dililikima has quit IRC
[18:45:46] <codestr0m> moinakg: what the hell does the 4294967295 mean?
[18:45:49] <codestr0m> just some int?
[18:51:01] <moinakg> codestr0m: it is a signed int representing -1
[18:51:17] <moinakg> printed as an unsigned int
[18:57:05] <codestr0m> moinakg: ok. so from here what?
[19:03:18] <codestr0m> dtrace -n 'pid$target:__priv_getbyname:return { trace(arg1); }' -c 'dlmgmtd -d'
[19:03:24] <codestr0m> no probes
[19:27:39] <moinakg> codestr0m: you are missing a ':'
[19:27:57] <moinakg> pid$target::priv_getbyname
[19:28:24] <moinakg> there are 2 colons instead of 1
[19:28:38] <moinakg> I mean you need '::'
[19:31:03] <codestr0m> dtrace -n 'pid$target::__priv_getbyname:return { trace(arg1); }' -c 'dlmgmtd -d'
[19:31:04] <codestr0m> 0 58494 __priv_getbyname:return 4294967295
[19:31:53] <codestr0m> moinakg: that's the last unique function I can dtrace for..
[19:32:51] <codestr0m> or how could I dig into list = d->pd_privnames;
[19:45:38] *** moinakg has quit IRC
[20:00:42] *** codestr0m has left #belenix
[21:19:18] *** mib_cnd6oj has joined #belenix
[21:20:36] *** mib_cnd6oj has quit IRC
top

   December 5, 2008  
< | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | >