Announcement

Collapse
No announcement yet.

Oracle Could Still Make ZFS A First-Class Upstream Linux File-System

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #71
    Originally posted by oiaohm View Post
    Section 3.1 CDDL question how do you make this FreeBSD license compatible? Your a lawyer right k1e0x Lets have some fun ripping you to bits.

    k1e0x avoiding the question. What were you fibbing that you are a lawyer.
    and to answer this.. so you feel better.. you make a directory called cddl and put it in there.

    Comment


    • #72
      Originally posted by k1e0x View Post
      and to answer this.. so you feel better.. you make a directory called cddl and put it in there.
      Try again this is legally wrong without something else. Go back and look at the OS X license I referenced. \
      Legacy mirror of Darwin Kernel. Replaced by https://github.com/apple-oss-distributions/xnu - apple/darwin-xnu

      1.5 "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.
      You have missed a step and you have just made a case of license infringement against either CDDL or FreeBSD license. Because the freebsd license does not have a area of effect limitation clause out the box.

      The correct answer to my question is you don't ever make CDDL compatible with FreeBSD License. Instead you add terms to the FreeBSD license so that its domain of effect does not cover the CDDL work so you do not breach section 3.1 of CDDL. So there is no need to put CDDL in a directory as long as the limitation clause used prevents the overlap. Of course this limitation clause has to be shipped with any binary made from it as this point things take a turn for the worst when you read closely the way Freebsd binary clause is does not include very much wriggle room.

      You now need to reference Unix System Laboratories, Inc. v. Berkeley Software Design, Inc case. How the case was settled and why was released in 2004. It covers the viral nature of BSD license. Because some of the files force to be release under BSD license back then were written by novel and were just built into a BSD covered binary. It that case that makes trying to resolve CDDL and BSD/MIT/... licenses next to possible to-do correctly to produce a single binary.

      BSD licenses turns viral when you make binaries but this viral does not force you to release source code.

      Basically making CDDL licenses and BSD licenses get along. Means the CDDL has to be kept independent work with independent binary.

      CDDL license
      3.5. Distribution of Executable Versions.

      You may distribute the Executable form of the Covered Software under the terms of this License or under the terms of a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable form does not attempt to limit or alter the recipient's rights in the Source Code form from the rights set forth in this License.
      This section 3.5 of the CDDL license you have not read. Gives a very clear warning that you have to be insanely careful that what ever license the binary is happens to be CDDL compatible if not you are in trouble.

      FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms.

      1. Definitions. 1.1. Contributor means each individual or entity that creates or contributes to the creation of Modifications. 1.2. Contributor Version means the combination of the Original Softwar…

      The FreeBSD License is a particular document. So this was a simple CDDL 1.0 vs FreeBSD License. 2 documents you need to compare read and work out where they were and were not compatible.

      If you don't read the license you are using and understand them you can legally stuff up so fast it not funny. Before using CDDL you need to read and understand all of section 3 of the CDDL license. You also need to understand how any other license you wish to mix with it works. Reality is majority of open source licenses are incompatible with CDDL.

      Comment


      • #73
        Welp.. thats what they do.

        I dug into the system code a little.. spelunking in the Unix kernel is fun.. never know what you'll find in there.. lol .. and for dtrace it's in the cddl folder with a cddl header on it. (a licence header is just a comment that says what it is) dtrace.c has includes to files in other directories that have a bsd header on them. I don't see a problem with that.. both files clearly describe what they refer to, in BSD's case its "All or some portions of -this file- are derived from material licensed to the University of California.. etc etc"

        It's pretty clear what they refer to. Both pretty much say, this licence applies to this file. It's not a broad brush like the gpl is.

        Your quoting the APSL there and that has different definitions then the source code in FreeBSD.. course.. how would I know that without reading it. idk why your doing that tho.. Apple makes no sense to anyone.. their lawyers even less so. Lets just stick to the CDDL and the part you quoted is in the CDDL anyhow so.. idk.

        The CDDL is much cleaner and you can pretty much step right through it.

        1.3. "Covered Software" means (a) the Original Software, or (b)
        Modifications, or (c) the combination of files containing
        Original Software with files containing Modifications, in
        each case including portions thereof.

        meaning. dtrace.c
        external file modifications would be patches.

        1.6. "Larger Work" means a work which combines Covered Software or
        portions thereof with code not governed by the terms of this
        License.

        meaning /usr/sbin/dtrace when combined with dtrace.c (cddl) and code not covered such as type.h (bsd)

        So.. as far as section 3 You have defined the licence applies to files, and you have the source file dtrace.c the licence applies to.

        3.1 "Any Covered Software (dtrace.c) that You distribute or otherwise make
        available in Executable form must also be made available in Source
        Code form and that Source Code form must be distributed only under
        the terms of this License.."

        Such is the case. dtrace.c is distributed under the terms of the cddl. To be clear it's referring to the file and how it's shared also it only applies to you if you distribute binaries. Not if you make binaries or use binaries.. The reason this applies to dtrace.c and not to type.h is because type.h is in a different file with a different licence header on it. They are specific to what they refer to.


        It also exempts itself here for the binary /usr/sbin/dtrace, this is an exemption for 3.1 so that it can be mixed and permissively licensed (or commercially) but the code must still be available with whatever you choose. The terms apply to the file dtrace.c. We know that because Covered Software is defined as a file, not as a works.

        3.5 "You may distribute the Executable form (binary) of the Covered Software (dtrace.c)
        under the terms of this License or under the terms of a license of
        Your choice, which may contain terms different from this License.." (such as bsd)


        and here is a broad catch all exemption.

        3.6 "You may create a Larger Work by combining Covered Software (dtrace.c) with
        other code not governed by the terms of this License (type.h) and
        distribute the Larger Work as a single product.." (dtrace as a whole)

        That's pretty permissive and so are the terms. All it really asks is you give the code back.. it's not stomping on anything, it goes to great lengths to allow it to be used with pretty much any thing any way. It says "licence of your choice" and "other code". So it's quite permissive on what you can use it with. It doesn't try to define open source and list what it thinks is open and not nor who can use it and where or who can make money on it. I can see how if you squint at it real hard you might come to the conclusion that it says something like "all software you ever write has to be cddl" but thats just not the case because of how its defined and with the file structure there is no "weird code mixing" going on because each file describes what it is. Also no vague descriptions for what "derivative works" is and is not. It's not magic legal soup. Its setup like this to intentionally be clear to the developers. Each file has it's own header and the product if its cddl it remain so but it has some exemptions if it's a combination.

        This is a good licence. Sun did a remarkable job here not only taking something as complex as 40 year old proprietary Unix code and open sourcing it. (has anyone ever done that with something so large and complex besides them? It must have taken years to track down the copyright holders, shit half might even be dead.) - but they made it real honest to god free for anyone. Very few companies can say that. Beyond that the code is really good, there is killer app things in there like zfs, zones, dtrace, crossbow etc, things Linux still doesn't have 10 years later. It's not like they only open sourced their crap and held back everything good like some people.

        For BSD It's been like this in FreeBSD for almost a decade now, since FreeBSD 7 I think. Actually your the first person I've ever heard make a claim it *wasn't* perfectly fine.. not that I go around looking for people who say such things.

        Now.. you got your argument there out of me. So.... when you say. "I send lawyers to jail if they believe lies and tricks are ways to win cases. I specialist in getting rid of lawyers of believe deception is way to win." - That means your an advocate right? Are you realizing anything I'm trying to teach you here about the chains of law?
        Last edited by k1e0x; 08 November 2017, 07:15 AM.

        Comment


        • #74
          Originally posted by k1e0x View Post
          meaning /usr/sbin/dtrace when combined with dtrace.c (cddl) and code not covered such as type.h (bsd)
          This is a common miss understanding. BSD license design is viral in binary. You use types.h that is a set of defines function and values. Courts have rules these are do not transfer license to the binary. Now inlines and macros are a different set of problem. Bsd has not triggered clause 2 the binary clause in bsd license when dtrace.c file is built because no BSD covered code be functions, in-lines or macros is included in the binary. Once clause 2 is triggered all source code matching the binary comes under BSD. Its call covered in this case Unix System Laboratories, Inc. v. Berkeley Software Design, Inc. Its key reading to know when you have stepped on BSD and when you have not.


          Also you did not read the types.h file. As it not pure BSD any more when its OS X core source code. Apple has been very clear all modifications by them are Apple Public Source License. If you check fairly much Apple has systematically replaced every macro and inline in the header files with their own versions to kill of BSD viral nature.

          Apple Public Source License version 2.0 is one of the few licenses that is CDDL compatible.

          Apple did not use dtrace.c with a pure bsd type.h with its viral nature still active.

          GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

          This is the Solaris source code. Everything looks fine right. Nothing in there is legally classed as protect-able in this types.h file it self you have to check the includes.
          GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

          Everything that was protect-able in types.h was moved into sysmacros.h that is CDDL on solaris.

          So OS X and Solaris can use types.h in dtrace a cddl work because they have defused the problem. But they have caused other problems if you are not careful with other licenses in the method they have used.

          Fairly much avoid using macros and inlines unless you are sure they will be license compatible.


          Originally posted by k1e0x View Post
          So.. as far as section 3 You have defined the licence applies to files, and you have the source file dtrace.c the licence applies to.

          3.1 "Any Covered Software (dtrace.c) that You distribute or otherwise make
          available in Executable form must also be made available in Source
          Code form and that Source Code form must be distributed only under
          the terms of this License.."
          You have not read Unix System Laboratories, Inc. v. Berkeley Software Design, Inc case.

          The problem comes from when you have include BSD code be it functions, inlines, Macros in your binary. So now first 2 terms of the BSD license has to be applied. The second term says all the terms have to be applied to the binary. First term says BSD license has to be on Source Code and CDDL does not allow that.

          Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
          BSD licenses are viral in the binary case because they don't have a limitation clause.

          The issue with CDDL + BSD is you end up if you are not careful with CDDL 3.1 + BSD clause 1 resulting in impossible. Any source code once used in a binary in a BSD work is covered by BSD terms that 1992 case says exactly that. This is not a problem with for GPL that allows additional terms as long as those terms do not prevent you from using the code. It is a problem for stuff like CDDL that says "only under the terms of this license".

          The Unix System Laboratories, Inc. v. Berkeley Software Design, Inc is referenced in a lot of GPL enforcement even that is a BSD license case because it defines some of the limitations on viral spread of software license in different rulings that were made. The reality is BSD class licenses are viral by rulings.

          Originally posted by k1e0x View Post
          and here is a broad catch all exemption.
          Would have helped if you had not cut a key sentences off.

          3.6. Larger Works.

          You may create a Larger Work by combining Covered Software with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Software.
          The In such case bit is key. So what ever the Larger works license is must not apply any extra terms to the covered software. You did the same thing to 3.5 as well.

          Really I do question if ZFS under freebsd is in fact legal. Its been fairly much head in sand not look closely at what Apple, Sun, Oracle... have done when dealing with CDDL.

          People around BSD say that BSD is not a viral license when court rulings say the other way. Apple, Sun, Oracle, HP..... you see them removing the viral parts from BSD based headers and placing those parts under different licenses to prevent a particular set of legal problems when they combined with licenses like CDDL and sometimes causing problems mixing with GPL in the process.

          The difference is in the GPL world the fact the license is viral is accepted as standard problem to deal with. Not sweep it under rug and hope it never comes up.

          Comment


          • #75
            I don't understand why we are talking about Apple.

            The issue with CDDL + BSD is you end up if you are not careful with CDDL 3.1 + BSD clause 1 resulting in impossible. Any source code once used in a binary in a BSD work is covered by BSD terms that 1992 case says exactly that. This is not a problem with for GPL that allows additional terms as long as those terms do not prevent you from using the code. It is a problem for stuff like CDDL that says "only under the terms of this license".
            The CDDL also allows that and the terms are satisfied for the source. Covered Software does not mean software in this case as you and I would know it. It doesn't mean software in general and it doesn't mean a works. It means a file. That is where your getting hung up I think.

            3.5 and 3.6 are long, much longer and you or I have quoted. I left ".." to include that there was more to it. I'm just trying to stay on whats important here. type.h is also maybe not the best file to use for the example here but it's simply an example. "only under the terms of this license" applies to CDDL exclusive. When it is "Executable" (defined) and "Larger Works" (defined)" both permit it so long as the copyright notice is retained.. and calling that viral is quite a stretch. The BSD licence does not say the code must only be BSD and it is the most compatible licence you'll find out there allowing pretty much all open source license and even any commercial licences to be used with it (they may have their own problems but the problem isn't here in this licence). All it requires is copyright notice, list of conditions, disclaimer. This is why it's called the business friendly free software licence.. it allows you to take your works commercial if you choose. Everyone has used this too, Microsoft, Cisco, Novell, NASA etc etc, basically everyone.

            And BSDi isn't the best thing to be citing precedence from.. Quite frankly the judges from CA liked the State of CA more than they liked AT&T. Neither side was doing the right thing and it's been settled. - This is why we have Linux btw.. nobody would have ever heard of Linux or the GNU if this case didn't threaten free Unix. FOSS as a movement didn't even exist at the time.

            And lets say you were right for a second.. that would mean no commercial product could use BSD because all of them would have binding licences. You better tell the internet they have to stop using TCP.

            I'm gonna leave this here if your not willing to have a discussion tho.. I need to get you out of argument mode and I'm failing to do so.. nothing is being learned here so.. whats the point?
            Last edited by k1e0x; 09 November 2017, 01:04 PM.

            Comment


            • #76
              Originally posted by starshipeleven View Post
              Just like your mother.
              That said, Oracle ships btrfs as a major feature in their Oracle Linux, that is what they are using to replace Solaris.
              Btrfs is NOT certified/supported for Oracle database - this is all you need to know.

              Comment


              • #77
                Originally posted by k1e0x View Post
                I don't understand why we are talking about Apple.
                The CDDL also allows that and the terms are satisfied for the source. Covered Software does not mean software in this case as you and I would know it. It doesn't mean software in general and it doesn't mean a works. It means a file. That is where your getting hung up I think.
                Unix System Laboratories, Inc. v. Berkeley Software Design, Inc is the first time Covered Software is defined. Unix System Laboratories in that case find out that they don't have any source files that they have included in binaries using BSD headers with macros that can be without the BSD header and conditions. Unix System Laboratories had one of the first licenses using the term Covered Software.

                Originally posted by k1e0x View Post
                The BSD licence does not say the code must only be BSD and it is the most compatible licence you'll find out there allowing pretty much all open source license and even any commercial licences to be used with it (they may have their own problems but the problem isn't here in this licence). All it requires is copyright notice, list of conditions, disclaimer.
                This is a view of the BSD community that is not inline with the Unix System Laboratories, Inc. v. Berkeley Software Design ruling. Not inline with how that ruling has been used successfully in GPL cases. Cause 1 of BSD license say source code with any restrictions?
                1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
                Where does this say you can take a piece out of a BSD work and distribute it under a different license with out the BSD copyright,conditions and disclaimer on the source file. The answer it it does not. In fact the way this is written does not say it is restricted to BSD licensed code this is where it turns viral and ends up being required to be attached to all source code that made up binary. This is what left Unix System Laboratories with not copyright works independent to BSD licensed to argue in court against Berkeley Software Design.

                2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
                This says binary form is under the terms of BSD license including clause 1 that effects source code used to build the binary.

                The big thing you have missed when you attach conditions you have to obey them. .Unix System Laboratories attempted to argue having to attaching them meant they could BSD as Public Domain and went the step further and deleted them off some files.

                BSD is compatible with any License that allows its two extra terms/conditions to be added.

                GPL has a non derived work clause that means it viral nature is more limited than BSD licenses.

                Obeying the conditions in BSD brings you into conflict with CDDL. I like all the requires you quoted because you missed something the correct answer for BSD is
                All it requires is copyright notice, list of conditions, disclaimer and obeying the list of conditions to the letter of the law because they are legally enforceable.

                Unix System Laboratories, Inc. v. Berkeley Software Design, Inc case and latter GPL cases referring it provide how clause 1 and 2 in BSD licenses is interpreted in legally. You see people in the BSD community making some of the same mistakes as Unix System Laboratories did that causes them to lose in court.

                The reality is the Unix System Laboratories, Inc. v. Berkeley Software Design, Inc is referenced in GPL cases when people want to argue that GPL license should have its derivative works clauses overridden. BSD licenses you end up with the USA open define of derivative works infecting everything. Normally after reading the Unix System Laboratories, Inc. v. Berkeley Software Design, Inc case any wise legal team will no longer challenge GPL derivative works clauses instead work inside it restrictions.

                Its kind of a shock to a view people that BSD licenses are more viral than GPL licenses because they have no restriction clauses. Simpler a license like BSD licenses are insane broad and end up covering a lot more than you would first suspect.

                Comment


                • #78
                  Hey, look at that! They did upload this talk after all.

                  From the 2017 OpenZFS Developer Summit:http://www.open-zfs.org/wiki/OpenZFS_Developer_Summit_2017
                   

                  Comment


                  • #79
                    Apparently the talk is available, because Mark was fired anyway.

                    Comment


                    • #80
                      Originally posted by scineram View Post
                      Apparently the talk is available, because Mark was fired anyway.

                      https://twitter.com/bcantrill/status/931342500446351360
                      That's Omnomnomnomnomnomnomracle, the must do some evil every day or their investors aren't satisfied.

                      Comment

                      Working...
                      X