Can I Sell Software based on Itext Sharp - itext

I have a couple of small offline softwares that I wrote using Itext Sharp. The software uses IText Sharp to manipulate PDFs. I saw that Itext licensing is AGPL and any work based on that should also be AGPL (I should include source code along with the application and user can modify and redistribute)
My question is can I sell these softwares with source codes bundled with them?

The moment you sell software that is licensed under the AGPL in the context of proprietary, closed source software, you are in violation with the AGPL. If you use iText "free of charge", you need to follow the rules of the AGPL as described in this blog post: How do I make sure my software complies with AGPL: How can I use iText for free?
If you make your own source code open source, you can for instance charge for creating a distribution of your open source software (including the source of iText) on a CD or a DVD (but who still uses CDs and DVDs?), but you can't charge for the IP of iText. You also can't distribute the source code only to people who pay. That would be discriminating (and discrimination goes against the core values of open source).
This doesn't mean you can't make any money. The owner of the iText software, iText Group, offers two options that allow you to make money with your software:
You can purchase a commercial license for your use of iText. If your product is an offline product that people install on their own machine, you will have to buy a Desktop OEM license and pay a small fee for every copy you sell. Note that you need to buy an OEM pack of several licenses in advance. You can't buy OEM licenses one at a time. You need to be sure that you will sell sufficient copies.
You submit your products for evaluation to iText Group, and you ask iText Group to sell your product. For every copy of your software that is sold by iText Group, you will receive money. If you don't have any sales people, nor any marketing budget, this option is to be preferred. iText Group has offices in the US, Europe, and Asia. iText is present at events all over the world. This is an ideal way for you as a developer to have your product promoted world-wide. See iText Creates Revenue Sharing Opportunities for Development Community
See also Monetizing open-source projects, which is a slide-deck that explains how open source licenses work, and how you can make money using open source. You will also notice some legal documents that show that the AGPL can be upheld in court (we won a law suit against a developer who knowingly violated the AGPL).

Related

General InkScape, Unity3D (and other free tools) Licencing

I know that this is going to be kind of a silly question (I'm sorry; I tried googling, but I'm still a little confused). Here's what I want to know.
Suppose that I create an asset/game with InkScape/Unity3D (or any other freeware/open source tool). Do I need permission from the organization who made the freeware/open source tool to use the created asset for commercial purposes?
Thanks.
What cjmarsh says is definitely true about software licensing in general. Although, I would not be that insistent on talking to a lawyer (unless the project generates large amounts of money, that is).
Yet, I'd like to add a brief point about the difference in the tools OP is asking about (inkscape and unity):
inkscape
You are not bound by inkscape's license in distributing drawings produced by it. The license is about code distribution, which means the code of inkscape itself. The resulting drawing of an inkscape project is in SVG (or some other format depending on preference).
SVG is a standard on its own, published by the W3C, and does not contain any piece of code from inkscape.
unity
On the other hand, when developing with unity you are using API calls that originate from the unity libraries themselves (possibly wrapped by extra functions for whichever language you're using). Moreover, you project needs to link against the unity libraries in order to work.
Since your project will use pieces of unity code, you're bound by the license obligations from unity.
Software licensing is a complicated topic and to get a definitive answer to your question you'll have to speak to a lawyer. In layman's terms: you can use open source software for commercial purposes but there are often caveats depending on the specific license used. I should also note that Unity3D is not open source, however you can use the personal edition if you gross less than $100k annually. For more details check out their licensing page.
Inkscape on the other hand is free and open source with a good license for content creators: the GNU General Public License so "In short, this means you are free to use and distribute Inkscape for any purpose, commercial or non-commercial, without any restrictions. You are also free to modify the program as you wish, but with the only restriction that if you distribute the modified version, you must provide access to the source code of the distributed version."
There are quite a few different licenses like the most liberal of all CC0 Public Domain, a license that essentially puts your stuff in the public domain, making it completely free for any purpose to everyone, without you needing to be dead for 60 years. Then there are licenses like the LGPL which still lets you use it for commerical purposes but requires you to publicly disclose any changes made to the code that was under the license and if you embed it in your application (statically link it) then you have to release your product under the same license. There's also the kind of license like CC BY 3.0, a Creative Commons license that lets you do whatever you want so long as you give an attribution, include the license, and mention if it was modified. Here's a list of more open source licenses to give you an idea of how many there are.
Without paying the fees to consult a lawyer like everyone will tell you to do and nobody actually does you can check out summaries of the different licenses at sites like tldrlegal.com as well as read through them yourself and check out the licensing page on the individual sites of the software you use. In my opinion the software author's intention for distributing the software is more important to recognize than the legalese. Although you should also recognize the legalese.
Bottom line is you don't need explicit permission from the author because they already give it in the form of an open source license, so long as you satisfy the conditions of the license.

What are iTextSharp copyrights

What are iTextSharp copyrights?
can I use it (without modifying it) in my project? I need to use it a PDF generation tool,
Any advise is appreciated.
thanks a lot,
This question is more or less a duplicate of several questions that were already answered on StackOverflow, but it isn't an exact duplicate of a single question. I have bundled several of these question in the free ebook The Best iText Questions on StackOverflow. If you want the full answer, I advise you to read the legal section of this book. I'll do an attempt to give a short answer here.
I am a Mentor at the Founder Institute and I use these slides to explain copyright and copyleft. You can find the text that explains slide 3 in my answer to the question Is iText Java library free of charge or have any fees to be paid?
You explicitly say that you do not modify the iTextSharp source code, which means you have probably read the copyleft license. However, you have doubts about the interpretation of the word "modifying". Allow me to copy/past from my book:
Start quote:
Free software is licensed software. iText is free software. That doesn’t mean that iText is for free: iText has always been distributed with a copyleft license.
Some people only read the first part in the definition of "copyleft". They read about receiving "permission to reproduce, adapt or distribute" iText, but they forget about the second part: "as long as any resulting copies or adaptations are also bound by the same copyleft licensing scheme."
iText versions pre-dating iText 5 were licenses using a weak copyleft license (more specifically the MPL/LGPL). This means that you can use such a version in an application that isn’t bound by the copyleft license. Your only obligation is to distribute the changes you make to iText under the MPL, the LGPL, or the MPL/LGPL. In theory, those versions can still be used inside applications that are not free. In practice, you should no longer use those old versions for both technical as well as legal reasons (as explained in one of the previous questions).
Starting with iText 5, iText has increased software freedom, in the sense that the license was changed to a very strong (some use the word "viral") copyleft license, more specifically the AGPL. When you use iText in an application that you distribute or when you use iText in a web application that allows
people to directly use iText (through a SaaS application, on a web site,...), you have to distribute all the source code that touches iText under the same license and under the same license only.
Some people argue: "We do not modify iText, hence we are not bound by the AGPL."
That assumption is incorrect. Writing a web application that uses iText is considered being a modification in the context of the AGPL and putting this application on a web server for people to access is considered being distribution.
End quote
In short: in a court room, linking your application to the iTextSharp DLL is considered being a modification, even if you do not change anything to the DLL. All modifications have to be distributed under the AGPL, hence your application has to be distributed under the AGPL. This way you contribute to the community.
If you do not want to share your source code under the AGPL, or if you want to distribute your code under a dual license to make money, you can escape from the obligations of the AGPL by purchasing a commercial license.
This way you also contribute to the open source project, as the money you pay is used to pay the salaries of about 20 people who work full-time for the iText group (and indirectly you pay for many more people such as accountants, freelancers, attorneys, etc. working for iText).
If you think this is unfair, think about how you would feel if you were not rewarded for the work you are doing. You don't want situations like what happened to the guy who wrote PGP who depends on charity, do you?

SAP Management Reporting

I'm an ICT & Business student, currently doing an internship in a quite big company. My assignment is to find a way to deliver Management Reports to Line Managers.
The company is using SAP (Employee data such as name, department, contract start-end date etc. can be found there).
The managers don’t have SAP accounts therefore they can’t login to SAP. I need to find a way to retrieve the data from SAP, create custom reports and deliver them to the managers (via mail or website where the reports will be stored).
Can Crystal Reports do that? Or do I need additional tools?
As far as I know in order to send reports to recipients you need to have BO license for each recipient.
Cheaper (even free) alternative will be to use one of the 3rd party tools available on the market. Groff Automation (http://www.groffautomation.com/) has a free scheduler, which can be used to run and send reports by e-mail. It is pretty basic , but will do the job.
Another free option is the free license from R-Tag (www.r-tag.com), free license is available from this link: http://www.r-tag.com/Pages/FreeCrystalReportsViewer.aspx
This one has more options , but the free license is just for the viewer. If you want to schedule the reports you need to purchase their scheduler license.
If you are willing to purchase a license for a scheduler you can check also the other available options from this link:
http://kenhamady.com/cru/comparisons/desktop-scheduling-engines
It contains the 2 products mentioned above + some more.

How can I tell the "windows security center" that I'm an "antivirus"?

we are developing an anti-virus, I'm trying to find out how can we tell the operating system -windows XP in this case- that our software is an anti-virus. I want that the OS recognize our software as an anti-virus and the security center list it.
You have to sign an NDA to get the information. Quoth MSDN forums:
To register an antivirus product:
Must be a member of the Microsoft
Virus Initiative.
OR
Must meet the following three
requirements:
Must have a standard NDA with Microsoft.
Must be a member of AVPD or a member of EICAR or must sign and
adhere to a code of ethics relating to
malware research and malware handling.
Must meet independent testing requirements:
a. If you are using your own antimalware engine, you must pass
VB100 and meet at least one of the
following:
ICSA Labs - Pass
West Coast Labs - Pass
AV-Test.de – 90% or higher
AV-Comparitives – 90% or higher
b. If you are packaging an antimalware engine from another
company:
The company who developed the engine must meet the
above requirements.
In order to be able to register an AV product with Windows Security Center, you need a private API from Microsoft or, starting with Windows 10 build 1809 you need to register a Protected Service. In order to do both these things, you need to be member in the MVI.
Just for the record, a few years later now, the requirements have changed a bit.
First of all, this is the new link:
https://learn.microsoft.com/en-us/windows/security/threat-protection/intelligence/virus-initiative-criteria
The criteria have also changed and they are more complex.
Assuming you have a product build with a 3rd party SDK, here are the requirements to become a member:
Offer an antimalware or antivirus product that is one of the following:
Your organization's own creation.
Developed by using an SDK (engine and other components) from another MVI Partner company and your organization adds a custom UI and/or other functionality.
Have your own malware research team unless you build a product based on an SDK.
3. Be active and have a positive reputation in the antimalware industry.
Activity can include participation in industry conferences or being reviewed in an industry standard report such as AV Comparatives, OPSWAT or Gartner.
Be willing to sign a non-disclosure agreement (NDA) with Microsoft.
Be willing to sign a program license agreement.
6. Be willing to adhere to program requirements for antimalware apps. These requirements define the behavior of antimalware apps necessary to ensure proper interaction with Windows.
7. Submit your app to Microsoft for periodic performance testing.
8. Certified through independent testing by at least one industry standard organization.
The most hard to achieve requirements are marked bold.
If you want more details what these things require, check here.
Best,
Sorin

License restrictions on including a DLL in another repo? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
Answered:
They don't allow any kind of redistribution with 2.6, supposedly, unless you have licenses for it. But they don't sell licenses for it. But they give it away free. But, who knows, i think they just want us to buy an overpriced thing we don't need to write a free utility. I guess I'll look at NVelocity or TaHoGen...
I am concerned about placing some DLLs that go with a project, which is also free (on SF.net), but hasn't had a particular license associated with it yet. This is a bit lawerly, but hopefully not so much so that it can't be answered through experience. And there is a lot of that here :)
I think the issues is really with CodeSmith 2.6, since they have their own "custom" eula. To view the "sourcelicense.txt" you need to download the zip and open it, but i've copied the relevant parts into the post (sorry they are so long!)
Edit:
What the app does it use CodeSmith 2.6
dlls, along with a collection of
custom templates, to generate class
files/etc. We don't need the
codesmith source, only the compiled
result. Of course, those dll's will
be distributed with the application in
the .exe. The question is whether or
not stuffing them in to the repo is
somehow different (or legally more
questionable) than putting them into a
.msi/.exe installer.
I'll approach codesmith about this,
but I would like a better
understanding than I have now, is all.
They are currently not in the repo,
but it would ease things for the dev
processess if they were.
End Edit
1 MIT Licensed component (doesn't seem like an issue)
Mysql.Data.dll (not sure of the license)
CodeSmith 2.6 Freeware DLLS
Compiled to DLL form
SchemaExplorer.dll / etc
CodeSmith.Engine.dll
I'd like to be able to make the project self hosting, and not have the user go traipsing around, downloading and/or compiling copies of the source (especially if they find a newer version or older verision, which could easily happen with the MIT/msql components.)
There will be nice instructions if the DLLs can't be included, but life is infinitely simpler if they can, and there are no chances of the project going "dead" if one of them is suddenly yanked.
SOURCE CODE LICENSE (from CodeSmith 2.6 eula/sourcelicense.txt)
The SOURCE CODE is protected by United States copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOURCE CODE is licensed, not sold.
GRANT OF LICENSE. This EULA grants you the following rights:
Source Code. You may install and compile one copy of the SOURCE CODE on a single computer. The primary user of the computer on which the SOURCE CODE is installed may make a second copy for his or her exclusive use on a portable computer.
Storage/Network Use. You may also store or install a copy of the SOURCE CODE on a storage device, such as a network server, used only to install or compile the SOURCE CODE on your other computers over an internal network; however, you must acquire and dedicate a license for each separate computer on which the SOURCE CODE is installed or compiled from the storage device. A license for the SOURCE CODE may not be shared or used concurrently on different computers.
Use and Modification. SMITH grants you the right to use and modify the SOURCE CODE to better fit your needs. You may not distribute the SOURCE CODE, or any modified version of the SOURCE CODE, in any form. Any modifications made to the SOURCE CODE will continue to be subject to the terms and conditions of this EULA. Any modified versions of the SOURCE CODE may only be executed in object form by users also owning a SOURCE CODE LICENSE or by users owning a CodeSmith Professional license.
Use of Generated Output. You may distribute the output of your custom templates or the included templates in any way.
DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.
Separation of Components. The SOURCE CODE is licensed as a single product.
Redistribution. The SOURCE CODE may not be redistributed in any way.
Custom Template Distribution. You may distribute your custom templates for the SOURCE CODE only if they are offered free of charge.
No Rental. You may not rent, lease, lend or provide commercial hosting services to third parties with the SOURCE CODE.
Non-Transferable. This license may not be transfered or sold in any way.
Termination. Without prejudice to any other rights, SMITH may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOURCE CODE and all of its component parts.
ADDITIONAL SOFTWARE/SERVICES.
Support Services. SMITH may, but is not obligated to, provide you with support services related to the SOURCE CODE.
Supplements. This EULA applies to additional software and updates of the SOURCE CODE, including without limitation supplements, service packages, hot fixes, or add-on components (collectively "Supplements") that SMITH may provide to you or make available to you after the date you obtain your initial copy of the SOURCE CODE, unless other terms are provided along with such Supplements.
COPYRIGHT. All title and copyrights in and to the SOURCE CODE (including but not limited to any images, photographs, animations, video, audio, music, text, SAMPLE CODE, and "applets" incorporated into the SOURCE CODE) and any copies of the SOURCE CODE are owned by SMITH. The SOURCE CODE is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOURCE CODE like any other copyrighted material except that you may install the SOURCE CODE.
First: Stackoverflow is not a lawyer and can not provide legal advice. Take any legal information here with a grain of salt, and ask a lawyer if it matters.
Umm, that isn't anything close to a free software license, so I don't think it follows sf.net rules.
It doesn't grant you any permission to redistribute, either. In fact, it bars it:
2.2 Redistribution. The SOURCE CODE may not be redistributed in any way.
Possibly, your DLL is a "custom template", in which case it must be distributed free of charge, which violates clause 1 of the Open Source Definition
Custom Template Distribution. You may distribute your custom templates for the SOURCE CODE only if they are offered free of charge.
Other than that, you definitely need to clarify what you're doing.
I'm not familiar with what CodeSmith does, and I don't know exactly what you're doing with it. Obviously, you aren't going to redistribute source code, but they don't seem all that concerned with what you might redistribute.
There's that "Use of Generated Output" clause; are you going to be distributing template output only? Were you going to change their source code for this project? Without knowing the answers to questions like these, I can't advise you.
You could clarify what you're doing, or ask CodeSmith. I'm not sure that finding a lawyer who can answer your specific questions is going to be easy, as there's a lot of technical stuff going on in that license.