|IRC Nick||Time (GMT-7)||Message|
|[Outcast]||10:04||So I looking my first browser plugin. Can some explain at a high level why I should use fire breath instead of going native with NPAPI?|
|kylehuff||10:04||because NPAPI is a mostly undocumented nightmare. Furthermore, using plain old NPAPI doesn't allow you to benefit from the years of experience and testing that has gone into Firebreath.
one of the the goals of Firebreath is to abstract (wherever possible) the inconsistencies between browser implementations of NPAPI (operating system too).
|[Outcast]||10:04||Ok I am going to give it try.
Just watching videos now while VS is downloading.
How easy is it port to mac from windows?
|kylehuff||10:04||Additionally, Firebreath provides several useful tools (boost, jsoncpp, etc) that you don't have worry about - you just add them to your plugin configuration and they are included. IMO, Firebreath is a better choice, if for no other reason than build environment that it provides, and the fact that I can focus on the specifics of my code and what it should do without worrying so much about NPAPI|
|[Outcast]||10:04||or the other way
|kylehuff||10:04||if the code you wrote is compatible with OSX, then it should build on OSX.|
|[Outcast]||10:04||I am just write straight c not trying to anything OS specific if possible.|
|kylehuff||10:04||I use the same codebase and compile fine on Windows, Linux, OSX and *BSD|
that is what I am looking for.
|kylehuff||10:04||however, I do not do any drawing
I cannot comment on the drawing support.
|kylehuff||10:04||then Firebreath is probably the best choice. I use it for that (as an API) and it I know nothing about NPAPI.|
all of the reporting will be in html5 to make easier for UI design.
|kylehuff||10:04||You may run into issues with privileges and libpcap, depending on the OS and if you need promiscuous mode - but that is not a Firebreath issue.|
|[Outcast]||10:04||That is true with any application.|
|kylehuff||10:04||*promiscuous mode or need to construct packets at a level less than the transport layer|
|[Outcast]||10:04||PM will not be need for this test. The packets I will be sniffing are destine for this machine. All other check are done at layer 3 using unprivileged ports.
I will give it a shot.
thanks for the info.
|kylehuff||10:04||np. have fun.|
|[Outcast]||10:04||I have added this room to my auto join list so I should be around while I am working on the project.
I will fill out the usage survey after I have been using it for a while.
If you have any networking or voip feel free to hit me up.
*networking or voip questions
|kylehuff||10:04||you a network engineer?|
Highly focused on API, Transport, HA and Packet routing for Layer 2 and 3.
|kylehuff||10:04||likewise. well, used to be. changed jobs about a year ago|
I just left Juniper to work on my startup. Having to take contracting gigs to keep the bills payed.
hence me landing here.
|kylehuff||10:04||I hear that
what kind of startup? if you don't mind sharing...
|[Outcast]||10:04||Network solution company: I have invented a new way to build mobile networks with 3GPP. Working on second prototype.
We have also come up with a NaaS platform for small business
Then we have some IP I brought with me call SociableNow
Going to be submitting the iPhone app for SociableNow in next week or so.
but or focus is going to be the Mobile solution. We will be targeting developing countries and emerging markets. Since that is where the greatest demand for mobile networks currently is.
|kylehuff||10:04||interesting. well good luck on your venture. if your ever have a need for out-of-practice former systems/network guy specializing *nix, VOS and Cisco IOS, I'm probably too busy, but still interested =c )|
|[Outcast]||11:04||I am still installing VS at the moment. I do have question. does compiling firebreath under cygwin supported?|
|kylehuff||11:04||I compile via msys and cmake, however, VS is still required as it provides the required compiler and ATL libraries.|
|[Outcast]||12:04||Been playing with tutorial and so far I like it.|
|kylehuff||13:04||there isn't much to not like as far as I've seen, and I can't argue with the results; my resulting plugin binaries function without incident in every browser I've tested, on 4 different operating systems.|
|[Outcast]||13:04||my prepmac.sh is dieting.
I most likely missed a step
yep I broke something
I deleted the build directory completely
I just need to get rid of the binaries.
My assumption on that maybe wrong
anyone around that can provide guidance?
|kylehuff||13:04||I use a custom makefile, and if I want to ditch the binaries, I just do `make clean && make`, which deletes the build dir and reruns the prep-script. I think there is a cmake command for cleaning the binaries. you could probably alternately use `cmake --clean-first --build <builddir> ...`|
|[Outcast]||13:04||something is wrong here|
|kylehuff||13:04||if you are so inclined, my Makefile for reference/unabashed plagiary: https://github.com/kylehuff/webpg-npapi/blob/master/Makefile|
|[Outcast]||13:04||is there something on wiki that explains the step when moving the project from OS to another?|
|kylehuff||13:04||I'm not sure about that specifically, but what are you having trouble with? I checkout the source for my project on all O/S's (minus the build dir) and it works without incident. I just do "make", and my makefile does the rest.|
|[Outcast]||13:04||command not found.sh: line 2|
|kylehuff||13:04||you get that when trying to invoke what?|
|kylehuff||13:04||hmm, I'm not aware of anything special I had to do for OSX building, other than install XCode|
|[Outcast]||13:04||I am going to double check my cmd line tools|
|kylehuff||13:04||here is the wiki page for the OSX requirements: http://www.firebreath.org/display/documentation/Building+on+Mac+OS+X#BuildingonMacOSX-Requirements|
|[Outcast]||13:04||no it something bash is doing I think
I may have something in my ENV that shouldn't be.
looks CLI tool may have been out of date. will know in a few.
|kevincondon||13:04||I want separate Windows and Mac implementations of MyPluginAPI. I want separate classes, MyPluginAPIWin and MyPluginAPIMac, with the correct one compiled and instantiated using #ifdef. It looks like MyPlugin::createJSAPI() is where instantiation happens. How do I choose the correct impl there in the boost::make_shared call?|
|kris-||13:04||hi all, what is the best way to make sure that my NPAPI plugin is accessible only from mydomain.com?|
|kylehuff||14:04||kris-: I don't know the best way, but as general information - you can check the location of the page that is plugin is loaded from via: m_host->getDOMWindow()->getLocation();|
|[Outcast]||14:04||stupid windows formatting.|
|[Outcast]||14:04||dos2unix is your friend.|
|kylehuff||14:04||one of the many reasons why I do all of my development on *nix based systems... I also only checkout my repos in windows as readonly, so I'm not tempted to commit code made shitty by windows. I want all of my shitty code to be of my own doing.|
|kris-||14:04||offtopic, does anyone know how chrome-web-store guys review a NPAPI plugin? if the source is not available to them? on what basis do they approve/disapprove?|
|kylehuff||14:04||kris-: my experience is that they just make you sign a document and provide photo ID that they keep on file. my project is open source, and I'm fairly certain they didn't review a single line of code.|
|kris-||14:04||kylehuff: you mean i have to sign a physical document and mail it to them?
mail as in post
|kylehuff||14:04||kris-: no, they email a PDF, you print it, sign it, scan it and email it back. (or send it via facsimile or postal mail, your prerogative)|
|kris-||14:04||kylehuff: ah! ok|
|[Outcast]||14:04||while I am thinking of it. Chrome on mac only supports 32bit plugins right?|
|kris-||14:04||[Outcast]: really? thanks for the info|
|[Outcast]||14:04||Not sure I was asking.|
|kylehuff||14:04||Not in my experience. I am pretty certain that I am running Chrome in 64bit on OSX.
I can load up my VM in a few minutes and confirm
|kris-||14:04||kylehuff: when i try to install a plugin from chrome web store .. it scares the user by the message "the extension can access all data on your computer and all the websites you visit" .. nothing much i can do there to make this message less scary right?|
|kylehuff||14:04||kris-: I think I was mistaken about the photo-id. that was for something different. looks like just need to sign a copy of their developer TOS
nope, that is managed by google
|kylehuff||14:04||it is a lie anyway. NPAPI plugins have the same file access that the current user account that the application is running under.|
|kylehuff||14:04||I think the message is stupid, because the same is true for every Firefox extension, regardless of the inclusion of NPAPI plugins.|
probably google wants to play too safe
thanks guys for the FB project, i could write a powerful plugin very quickly without knowing too much details about npapi
|kylehuff||14:04||kris-: the thanks goes to taxilian, he is the author; I'm just a fly on the wall.|
|kris-||14:04||kylehuff: helping out people on irc is good contribution to the project too!|
|kylehuff||14:04||any support you can show by way of contributing back (code, bug reports/fixes, wiki updates/articles or donations) is greatly appreciated.|
|[Outcast]||14:04||Chrome is 32 bit on OS X|
|kylehuff||14:04||yeah, I just confirmed that [Outcast]|
chrome is 32bit on osx! why the hell!
|kylehuff||14:04||I can't remember which browser it was that forced me to compile a mach-o bundle with 32bit and 64bit binaries... maybe it was Safari...|
|[Outcast]||14:04||the default for OS X projects for FIreBreath set the project to build both i386 and x86_64 that is most likely why chrome has been working.|
|kris-||14:04||so can i compile 32bit plugins for chrome on 64bit macosx?|
|[Outcast]||14:04||yes, it will do by default. So in other words don't change any setting. Just following the instructions on the documentation and it should work everywhere.|
|[Outcast]||14:04||Npapicore take so long to compile!!!|
|kylehuff||14:04||yes, on OSX it takes forever for me (granted, I run OSX via a virtual machine with little resources, on a laptop with modest resources)
after deleting my build dir, it takes 2m33.189s to run the prep scripts and build on Linux. I think it something like ~15-20 minutes on OSX
|kylehuff||15:04||kevincondon: I have no useful input to your question; but someone might come around eventually with a good answer for you. I would suggest repeating your question after awhile, as there has been quite a bit of activity since you asked.|
|[Outcast]||15:04||Why won't X Code escape spaces when using the linker?
it does it every where else.
|[Outcast]||15:04||what do you guys use to build the x code project file
looks like cmake does not escape the spaces while setting the "Other Linker Flags" when it make the Xcode project file.
hand to fix by hand.
I don't thinks it your problem its a CMake bug.
bbl need to head home. Thanks for the help guys.
|taxilian||18:04||heh. I take a day off and there is actually activity here
who'd'a thunk it?
|kylehuff||18:04||at one point I had thought pretty much the same thing to myself.|
I skimmed, but did I miss anything important?
|kylehuff||18:04||no, I think there was only one question I couldn't answer anything to at all, but I believe he left already|
|taxilian||18:04||yeah, looks like it|
|kylehuff||18:04||the rest of the questions I pretty much just made stuff up, and they seemed happy about it. =c )|
|taxilian||18:04||lol. drat! you figured out my secret...|
|kylehuff||18:04||what? that half of your secret is being around? lol. I can thank the surgery for that. if you mean making stuff up, I guess I didn't realize that was a secret. I should have kept my mouth shut|
well, gunna go play with my kids
I'll be back around more tomorrow, maybe. Definitely the day after
|kylehuff||18:04||have fun. later|
|[Outcast]||20:04||well that was a pain to debug. I have been banging my head against my keyboard trying to figure out why my plugin would not load. The Info.plist had the wrong name of the executable.|