[06:05:28] --- reuteras has left [06:14:43] --- Simon Wilkinson has become available [06:14:55] --- Simon Wilkinson has left [06:15:09] --- Simon Wilkinson has become available [08:18:50] --- Russ has become available [09:42:20] --- jaltman/FrogsLeap has left: Disconnected [09:42:28] --- jaltman/FrogsLeap has become available [10:39:46] Russ: If you have a spare moment, could you take a look at the licensing on 3591 ? [10:50:01] Ugh, yeah, that's a problematic license. Commented. [10:51:12] To mention, I strip all of WINNT from the package uploaded to Debian just to save archive space, so this doesn't directly affect Debian. [10:52:54] That code has actually already been committed, 3591 is just a cleanup. [10:53:06] So I guess the problem really is whether we revert the original commit or not. [10:53:15] which is better than before but we should still see if we can resolve the license [10:53:56] If we're planning on trying to keep OpenAFS DFSG-free, then we probably should. Either that, or reimplement it ourselves. [10:55:43] He was archer@frmug.org at least at some point in the past. He used to contribute to INN. [10:56:28] Yup, looking good for that still being him. [10:56:52] While you're here, Russ, I should say how useful the testing framework is proving. [10:57:30] It looks like that file is from Minix. [10:57:38] Oh, cool! I'm really glad it's useful. [10:58:06] Most of rxgk has tests using it, and I'm adding tests for the other bits of the code I'm having to modify to fit rxgk in. [10:58:20] Yeah I've not been around much -- taking over our account management system has eaten my brain. Had to go from 0 to 60 on Java in a month. [10:58:32] Nice [11:00:00] Yeah. Another three months to go on that and then things should calm down. At least now I'm fairly proficient in Java. :) [11:00:08] Eclipse is quite nice if you're doing Java. [11:00:22] Yeah. I think you need something like Eclipse just to keep you sane. [11:00:54] I'm impressed at how good Java is at testing, particularly if you're using Spring. [11:01:04] It's really easy to mock up all kinds of things. [11:01:41] Yeah. I think unit tests start to really make sense in that kind of environment. [11:03:12] Yeah, parsemode is definitely from Minix. [11:04:28] tcl/unix/tclUnixFCmd.c is BSD and includes GetModeFromPermString which we could probably reuse if nothing else [13:03:22] I see my kafs portability layer needs to get more complicated on Macs and Solaris 11. [13:03:52] macos went ioctl at a given version [13:04:23] Is there any reasons not to move to using ioctls across the board? [13:04:57] I wonder how to duplicate figuring out what version of the Mac OS X interface to use without assuming that the user has OpenAFS headers, or if it's worth it. [13:05:42] Does every platform have ioctls? [13:05:49] russ, use the config.status output [13:05:55] I'd love ioctls over the stuff we do on AIX and IRIX now. [13:06:02] Oh, okay. That's relatively easy. [13:06:04] simon, we need to write the glue to hook into every platform's way of making a device [13:06:36] Yeah, and that's probably not going to easy for, oh, AIX, HPUX, and IRIX, I guess. [13:06:53] russ, starting with 10.4, use ioctl. [13:07:02] Which, strangely enough, is the set of platforms that won't have rxgk support. [13:07:11] And starting with... 10.6? use the 64-bit version? [13:07:16] and realize we don't support pre 10.3. so only 10.3 has syscalls. [13:07:24] We should use ioctl on BSD if we don't already. [13:07:33] in 10.6, use the 64 bit version when you are 64 bit. [13:07:41] I think we're using system calls on BSD right now. [13:07:41] we support both. we must. [13:08:06] Oh, there's the sizeof() check. I see. [13:08:44] yeah. note that you can have 64 bit userland on 32 bit kernel, so the hoops were fun [13:09:34] Heimdal libkafs is missing the Solaris 11 support. [13:09:43] And I think it's missing the 64-bit Mac OS X 10.6 support, although I'm not sure. [13:09:56] it probably is [14:21:12] Russ, did you send mail to Vincent Archer? If not, I will do so. [14:21:52] I haven't, no, sorry. Thanks for doing that! I'm still knee-deep in trying to get another version of pam-afs-session finished. [14:29:54] e-mail sent [15:36:09] Has the syscall approach never worked on Solaris 11, or should I fall back to syscall if the /dev device doesn't exist? [15:41:11] The syscall approach did not work on the Solaris 11 express release, because they reallocated our syscall, but they've given it back, at least for now, so that it should work on Solaris 11 FCS. The problem is that trying is dangerous, because it's possible that we're not loaded and that making an AFS syscall will instead delete a file. [15:46:40] Oh, bleh. [15:46:55] So I should probably only use the ioctl on Solaris 11? [15:48:31] We presumably won't ever have anything targeting Solaris 11 that doesn't support the ioctl thing, so assuming it ought to be OK. Mostly we should keep providing the syscall so old binaries work. However, there is a catch, in that it may be difficult to tell the difference between... - OS/Nevada older than snv_135 - OS/Nevada snv_155 and newer (fixed) - Releases in between (broken) - Solaris 11 Express 2010/11 (broken) - Later Solaris 11 Express/FCS (fixed) [15:52:32] create dummy file, make syscall, if dummy file goes away then you kno what you have? [15:52:43] not really any worse than trapping SIGSYS... [15:53:16] Are you not better off trying the ioctl first. If that works, just use ioctls. [15:53:22] Otherwise, try the syscall, and hold on to your hats ... [15:53:45] Well, I'm trying to figure out whether to ever try the syscall or just fail if the ioctl fails. [15:54:17] mmm, why do I have that nick? [15:54:35] Your chat client will have requested it when you joined the room. [15:54:58] I'm actually using bitlbee and it lost contact at some point; that's a falback /nick [15:55:09] Assuming the target of the ioctl doesn't exist, you can try the syscall or not. If you don't try the syscall, you won't work against older CM's. If you do try the syscall, you risk deleting files on the broken releases. Plus, eventually Sun will reallocate that number again, and before that happens, we want to not be trying it. [15:58:11] Do we care about Solaris Express 2010/11 ? [15:58:31] Or can we just say Solaris >=11 implies ioctl only? [16:08:03] Well, part of the problem is that snv <135 and Solaris Express 2010/11 are the same sysname. [16:08:16] I was going to go ioctl-only for anything matching solaris2.1[123456789]. Sounds like that may not work? [16:08:24] In config.guess output. [16:08:53] My understanding is that that will work, providing there is a new enough OpenAFS cache manager on the machine. [16:09:52] ioctl-only on the library side or the CM side? [16:10:03] Library side. [16:10:03] Library side. [16:10:09] pam-afs-session, to be precise. [16:10:17] Also kstart when I do a new release. [16:10:28] (And only if they don't have libkafs/libkopenafs, etc.) [16:10:45] Although someone is going to need to patch Heimdal for the new calling conventions on Mac OS X and Solaris 11 at some point. [16:10:46] I think it would be fine for an openafs version which supports ioctl to simply include libraries that only try ioctl. [16:11:02] Yeah, but this is external to the OpenAFS distribution. [16:11:08] That's what makes it trickier. [16:13:42] I also think it's fine to do that on a platform for which there has never been an OpenAFS that did not support ioctl. So, since Solaris 11 Express 2010/11 (the first S11 Express) cannot support the syscall method, and any OpenAFS that works on Solaris 11 FCS will support ioctl, you should be fine assuming "SunOS 5.11" => ioctl. Provided that snv doesn't call itself "SunOS 5.11", because it'd sort of suck to release pam_afs_session et al that don't work on older snv. [16:14:02] I think you're probably safe with ioctl only. My suspicion is that Solaris 11 users are going to be an endangered species in any case. [16:14:15] Yeah, that's the bit that I have no clue about. Whether older snv calls itself SunOS 5.11. [23:20:43] --- reuteras has become available [23:28:07] --- Russ has left: Disconnected [23:36:51] --- reuteras has left [23:36:51] --- reuteras has become available [23:42:21] --- reuteras has left [23:43:34] --- reuteras has become available [23:44:22] --- reuteras has left [23:47:56] --- reuteras has become available [23:49:04] --- reuteras has left