Copyright question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear list members,

I have a question about source code copyright. I hope I can get an answer here.

Could someone please explain what is the level of copy which violets copyright?

For example take 3 cases.

Case 1: Exact replica of source code.
Ans: Violation

Case 2: Functions and variables renamed.
Ans: Violation

Case 3: Functions moved up/down, some function call deleted and some
new function calls introduced. But overall template/concept remains
same.
Ans: ???

I put another example to make my question clear.

Lets consider one function from LDD3 that has following source:

void end_request(struct request *req, int uptodate)
{
    if(!end_that_request_first(req, uptodate, req->hard_cur_sectors)) {
        add_disk_randomness(req->rq_disk);
        blkdev_dequeue_request(req);
        end_that_request_last(req);
    }
}

Now consider another function from drivers/block/floppy.c

static void floppy_end_request(struct request *req, int uptodate)
{
	unsigned int nr_sectors = current_count_sectors;

	/* current_count_sectors can be zero if transfer failed */
	if (!uptodate)
		nr_sectors = req->current_nr_sectors;
	if (end_that_request_first(req, uptodate, nr_sectors))
		return;
	add_disk_randomness(req->rq_disk);
	floppy_off((long)req->rq_disk->private_data);
	blkdev_dequeue_request(req);
	end_that_request_last(req, uptodate);

	/* We're done with the request */
	current_req = NULL;
}

Assume the function floppy_end_request is not from kernel and I have
written it for my employer.

Now the basic template of floppy_end_request is almost same as
end_request from LDD3. Since end_request is copyright protected, can I
not write a function like floppy_end_request function?

If I can not, then does it not virtually make new block device driver
writing impossible? Because all block device drivers will more or less
have same code at request handling level.

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux