Fabian Binz | 12 May 2012 17:12
Picon
Favicon

Re: virtual list control

Hi Jeremy,

 

I don't know if you continued working on this, but I forked wxHaskell on GitHub and tried to implement it myself: https://github.com/FabianBinz/wxHaskell

 

 

For testing purposes, I only implemented the OnGetItemText and SetItemCount method and it seems to work.

 

 

To implement the "virtual" list control, I defined a new class wxVirtualListCtrl in wxc:

https://github.com/FabianBinz/wxHaskell/blob/master/wxc/src/include/virtuallistctrl_impl.h

 

 

Since it needs to invoke a callback function, I created the typedef OnGetItemTextCallback. To make wxdirect accept this new type, I extended the parser (patomtype) in ParseC.hs. This solution is very ad-hoc and I think because wxc is supposed to be a language agnostic C wrapper, we should maybe add another macro to wcx_types.hs (something like TCallback), which is then recognized by wxdirect.

 

 

So, while this all works pretty well, there is unfortunately a memory leak in Graphics.UI.WXCore.VirtualListCtrl, because of my use of newCString. At the moment I don't know how to fix it and would be glad if someone could give me some advice.

 

 

 

Regards,

Fabian

 

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Jeremy O'Donoghue | 14 May 2012 10:43
Picon

Re: virtual list control

Hi Fabian,

On 12 May 2012 16:12, Fabian Binz <fabianbinz-LWAfsSFWpa4@public.gmane.org> wrote:

Hi Jeremy,

I don't know if you continued working on this, but I forked wxHaskell on GitHub and tried to implement it myself: https://github.com/FabianBinz/wxHaskell

I have been doing some work, but I don't have a lot of time right now, so it is going more slowly than I would like.

For testing purposes, I only implemented the OnGetItemText and SetItemCount method and it seems to work. 

To implement the "virtual" list control, I defined a new class wxVirtualListCtrl in wxc:

https://github.com/FabianBinz/wxHaskell/blob/master/wxc/src/include/virtuallistctrl_impl.h

Since it needs to invoke a callback function, I created the typedef OnGetItemTextCallback. To make wxdirect accept this new type, I extended the parser (patomtype) in ParseC.hs. This solution is very ad-hoc and I think because wxc is supposed to be a language agnostic C wrapper, we should maybe add another macro to wcx_types.hs (something like TCallback), which is then recognized by wxdirect.

So, while this all works pretty well, there is unfortunately a memory leak in Graphics.UI.WXCore.VirtualListCtrl, because of my use of newCString. At the moment I don't know how to fix it and would be glad if someone could give me some advice.


You need to use a finalizer - this is what I am looking into. There is an overview at http://www.haskell.org/haskellwiki/GHC/Using_the_FFI#Calling_Haskell_from_C, but it could be clearer! Basic idea is that you free the CString when the GC has no more references to the closure in which it is used.

I am using the event handler code as a model, since this already allows callbacks from C to Haskell, and handles reference counting. Just haven't finished yet.

I will take a look at your fork and see if you are further along than me, and take code accordingly.

Best regards
Jeremy
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Graham Berks | 18 May 2012 16:42
Gravatar

mail archive and xrc

Stupid question number one :) Can you search the mail archive ? I couldn't see anything offhand.

Also can you use xrc ? On the wiki news section says yes, short guide says no.
If you can does anyone have any examples ?

Thanks
Graham
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Honma Masahiro | 22 May 2012 05:22
Picon

Can't link my app with wxHaskell-0.90.0.1 on Lion

Hi,

I'm a Japanese programer and apologize for my poor broken English :(

I want to compile a sample program which uses wxHaskell
on Mac OS X Lion, but I couldn't build it.

I compiled HelloWorld.hs and I got following linker errors.

% ghc -package wx -o helloworld HelloWorld.hs
Linking helloworld ...
ld: warning: ignoring file
/System/Library/Frameworks//QuickTime.framework/QuickTime, file was
built for unsupported file format which is not the architecture being
linked (x86_64)
ld: warning: could not create compact unwind for _ffi_call_unix64:
does not use RBP or RSP based frame
Undefined symbols for architecture x86_64:
  "_wxListItemAttr_CreateEx", referenced from:
      _sUn6_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _sUng_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_Create", referenced from:
      _wxcorezm0zi90zi0zi1_GraphicsziUIziWXCoreziWxcClassesAL_listItemAttrCreate1_info
in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_CreateWithCb", referenced from:
      _sW0i_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _sW0E_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_Create", referenced from:
      _sWbY_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _sWcg_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_SetTextColour", referenced from:
      _s15xV_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_SetFont", referenced from:
      _s15BK_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s15BO_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_SetBackgroundColour", referenced from:
      _s15Gu_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_HasTextColour", referenced from:
      _s1BbT_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2Jq5_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_HasFont", referenced from:
      _s1Bdd_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2JnT_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_HasBackgroundColour", referenced from:
      _s1Bex_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2JlH_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_GetTextColor", referenced from:
      _s1BfQ_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2JjR_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_GetFont", referenced from:
      _s1Bh9_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2Ji1_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListItemAttr_GetBackgroundColor", referenced from:
      _s1Bis_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2Jgb_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_SetOnGetItemTextCallback", referenced from:
      _s1BB6_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2IKc_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_SetOnGetItemImageCallback", referenced from:
      _s1BCC_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2IIo_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_SetOnGetItemColumnImageCallback", referenced from:
      _s1BE8_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2IGA_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrlVirtual_SetOnGetItemAttrCallback", referenced from:
      _s1BFE_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2IEM_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrl_RefreshItem", referenced from:
      _s1C5g_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2HVB_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrl_IsVirtual", referenced from:
      _s1C6N_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2HTp_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
  "_wxListCtrl_GetItemFont", referenced from:
      _s1Cz0_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
      _s2H2z_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

What should I do to fix these errors?

I built ghc and wxWidgets by following steps;

% brew install haskell-platform
  (version: 2011.4.0.0)
% cabal update
% cabal install llvm
  (version: 3.0.1.0)
% brew install wxmac --use-llvm --devel
  (version: 2.9.3.1)
% cabal install wx cabal-macosx
  (version: 0.90.0.1 and 0.2.2)
% ghc -package wx -o helloworld HelloWorld.hs
  (I got errors described above.)

$ ghc `wx-config --libs` -package wx -o helloworld HelloWorld.hs
  (I also tried this commnad, but I got the same result.)

Then, I also try to compile hworld.cpp by using wxWidgets.
I got warnings below, but I could run ./hworld .

% g++ hworld.cpp `wx-config --libs` `wx-config --cxxflags` -o hworld
ld: warning: ignoring file
/System/Library/Frameworks//QuickTime.framework/QuickTime, file was
built for unsupported file format which is not the architecture being
linked (x86_64)

Regards,
hiratara

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Jeremy O'Donoghue | 22 May 2012 11:23
Picon

Re: Can't link my app with wxHaskell-0.90.0.1 on Lion

Hi Hiratara,

On 22 May 2012 04:22, Honma Masahiro <hira.tara-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
I'm a Japanese programer and apologize for my poor broken English :(

Much better than my non-existant Japanese :-)
 
I want to compile a sample program which uses wxHaskell
on Mac OS X Lion, but I couldn't build it.

I compiled HelloWorld.hs and I got following linker errors.


% ghc -package wx -o helloworld HelloWorld.hs
Linking helloworld ...
ld: warning: ignoring file
/System/Library/Frameworks//QuickTime.framework/QuickTime, file was
built for unsupported file format which is not the architecture being
linked (x86_64)
ld: warning: could not create compact unwind for _ffi_call_unix64:
does not use RBP or RSP based frame

This is a link issue with multimedia on Lion. It seems that Quicktime is a 32 bit library only. You can ignore this.
 
Undefined symbols for architecture x86_64:
 "_wxListItemAttr_CreateEx", referenced from:
     _sUn6_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _sUng_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_Create", referenced from:
     _wxcorezm0zi90zi0zi1_GraphicsziUIziWXCoreziWxcClassesAL_listItemAttrCreate1_info
in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_CreateWithCb", referenced from:
     _sW0i_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _sW0E_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_Create", referenced from:
     _sWbY_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _sWcg_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_SetTextColour", referenced from:
     _s15xV_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_SetFont", referenced from:
     _s15BK_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s15BO_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_SetBackgroundColour", referenced from:
     _s15Gu_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_HasTextColour", referenced from:
     _s1BbT_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2Jq5_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_HasFont", referenced from:
     _s1Bdd_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2JnT_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_HasBackgroundColour", referenced from:
     _s1Bex_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2JlH_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_GetTextColor", referenced from:
     _s1BfQ_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2JjR_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_GetFont", referenced from:
     _s1Bh9_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2Ji1_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListItemAttr_GetBackgroundColor", referenced from:
     _s1Bis_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2Jgb_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_SetOnGetItemTextCallback", referenced from:
     _s1BB6_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2IKc_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_SetOnGetItemImageCallback", referenced from:
     _s1BCC_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2IIo_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_SetOnGetItemColumnImageCallback", referenced from:
     _s1BE8_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2IGA_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrlVirtual_SetOnGetItemAttrCallback", referenced from:
     _s1BFE_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2IEM_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrl_RefreshItem", referenced from:
     _s1C5g_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2HVB_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrl_IsVirtual", referenced from:
     _s1C6N_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2HTp_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
 "_wxListCtrl_GetItemFont", referenced from:
     _s1Cz0_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
     _s2H2z_info in libHSwxcore-0.90.0.1.a(WxcClassesAL.o)
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

I need to check, but this looks as though you have a version of wxc which is incompatible with the wxcore you have. This is almost probably my fault (incorrect dependencies), and nothing to do with you - the install steps you have taken look correct to me.

I will check whether I see the same problem on a clean install of wxHaskell, and upload a new version if needed. 
 
What should I do to fix these errors?

I built ghc and wxWidgets by following steps;

% brew install haskell-platform
 (version: 2011.4.0.0)
% cabal update
% cabal install llvm
 (version: 3.0.1.0)
% brew install wxmac --use-llvm --devel
 (version: 2.9.3.1)
% cabal install wx cabal-macosx
 (version: 0.90.0.1 and 0.2.2)
% ghc -package wx -o helloworld HelloWorld.hs
 (I got errors described above.)

$ ghc `wx-config --libs` -package wx -o helloworld HelloWorld.hs
 (I also tried this commnad, but I got the same result.)

These steps look correct to me.
 
Then, I also try to compile hworld.cpp by using wxWidgets.
I got warnings below, but I could run ./hworld .

% g++ hworld.cpp `wx-config --libs` `wx-config --cxxflags` -o hworld
ld: warning: ignoring file
/System/Library/Frameworks//QuickTime.framework/QuickTime, file was
built for unsupported file format which is not the architecture being
linked (x86_64)

This is the C++ version of the warning that Quicktime is a 32 bit framework, and cannot be linked to a  64 bit binary. Again, you can ignore this (it needs to be fixed in wxWidgets).

Best regards
Jeremy
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Fabian Binz | 25 May 2012 15:18
Picon
Favicon

Reducing linking and startup times (on Windows 7)

Hello everyone,

 

is there a way to reduce linking and startup times?  Linking a “Hello World”-like wxHaskell program takes about 45 seconds and starting it up about

5. While the former is still acceptable I guess, the latter is way too long.


Regards,

Fabian

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Antton Tapani | 25 May 2012 17:22
Picon

Re: Reducing linking and startup times (on Windows 7)

Hello,

I've noticed this too. For what I can gather, it's an issue with
wxwidgets 2.9 and/or wxcore-0.9, but I don't really have the time or
knowledge to debug it. It might have something to do with the build
configuration of 2.9. I built mine using these instructions.
http://www.haskell.org/haskellwiki/WxHaskell/2.9

when wx-0.13.2.1 (with wxwidgets 2.8) is used to build the examples,
the linking process takes few seconds at most and the programs start
instantly. I don't think there's any harm in using older version to
get started, but I'd like to know a solution for this too.

To install the old version I used wxPack binaries for 2.8 and
installed wxcore-0.13.2.1 separately. Env variables need to point to
all relevant wxwidgets2.8 files during compilation. Cabal install
wx-0.13.2.1 defaults to newest version of wxcore so you need to:

cabal unpack  wx-0.13.2.1 (creates a folder inside the folder you're at)
cd wx-0.13.2.1
edit wx.cabal to target wxcore-0.13.2.1 specifically (rather self
explanatory I think)
runhaskell.exe Setup.lhs configure
runhaskell.exe Setup.lhs build
runhaskell.exe Setup.lhs install

This might not be exactly correct. I'm just swinging from memory. When
compiling the applications, use wx-0.13.2.1 instead of wx.

Antton Tapani

On Fri, May 25, 2012 at 4:18 PM, Fabian Binz <fabianbinz@...> wrote:
> Hello everyone,
>
>
>
> is there a way to reduce linking and startup times?  Linking a “Hello
> World”-like wxHaskell program takes about 45 seconds and starting it up
> about
>
> 5. While the former is still acceptable I guess, the latter is way too long.
>
>
> Regards,
>
> Fabian
>
>
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> wxhaskell-users mailing list
> wxhaskell-users@...
> https://lists.sourceforge.net/lists/listinfo/wxhaskell-users
>

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Eric Kow | 31 May 2012 12:58
Picon
Gravatar

wxDateTime::TIME_T_FACTOR

Hey wxHaskellers,

Anybody know what to make of this?

dyld: Symbol not found: __ZN10wxDateTime13TIME_T_FACTORE
Referenced from: /Users/foo/Library/Haskell/ghc-7.0.4/lib/wxc-0.90.0.3/lib/libwxc.dylib
Expected in: flat namespace
in /Users/foo/Library/Haskell/ghc-7.0.4/lib/wxc-0.90.0.3/lib/libwxc.dylib
/Users/foo/Library/Haskell/bin/my-gui: line 2: 63052 Trace/BPT trap 

The wxHaskell instance was installed on MacOS X Snow Leopard, I think with the instructions on http://www.haskell.org/haskellwiki/WxHaskell/Mac

It's wxWidgets 2.9.3.1 installed via Homebrew.

Frustrating that this should *still* be a black art after all that hard work from Jeremy and others :-(

--

-- 
Eric Kow <http://erickow.com>

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/

Gmane