blr              3354 source3/include/proto.h 		struct blocking_lock_record *blr);
blr              3385 source3/include/proto.h 		struct blocking_lock_record *blr);
blr              3432 source3/include/proto.h 			struct blocking_lock_record *blr);
blr              3444 source3/include/proto.h 			struct blocking_lock_record *blr);
blr               409 source3/include/vfs.h 					     struct blocking_lock_record *blr);
blr               419 source3/include/vfs.h 					   struct blocking_lock_record *blr);
blr                91 source3/include/vfs_macros.h #define SMB_VFS_BRL_LOCK_WINDOWS(conn, br_lck, plock, blocking_lock, blr) ((conn)->vfs.ops.brl_lock_windows((conn)->vfs.handles.brl_lock_windows, (br_lck), (plock), (blocking_lock), (blr)))
blr                93 source3/include/vfs_macros.h #define SMB_VFS_BRL_CANCEL_WINDOWS(conn, br_lck, plock, blr) ((conn)->vfs.ops.brl_cancel_windows((conn)->vfs.handles.brl_cancel_windows, (br_lck), (plock), (blr)))
blr               225 source3/include/vfs_macros.h #define SMB_VFS_OPAQUE_BRL_LOCK_WINDOWS(conn, br_lck, plock, blocking_lock, blr) ((conn)->vfs_opaque.ops.brl_lock_windows((conn)->vfs_opaque.handles.brl_lock_windows, (br_lck), (plock), (blocking_lock), (blr)))
blr               227 source3/include/vfs_macros.h #define SMB_VFS_OPAQUE_BRL_CANCEL_WINDOWS(conn, br_lck, plock, blr) ((conn)->vfs_opaque.ops.brl_cancel_windows((conn)->vfs_opaque.handles.brl_cancel_windows, (br_lck), (plock), (blr)))
blr               360 source3/include/vfs_macros.h #define SMB_VFS_NEXT_BRL_LOCK_WINDOWS(handle, br_lck, plock, blocking_lock, blr) ((handle)->vfs_next.ops.brl_lock_windows((handle)->vfs_next.handles.brl_lock_windows, (br_lck), (plock), (blocking_lock), (blr)))
blr               362 source3/include/vfs_macros.h #define SMB_VFS_NEXT_BRL_CANCEL_WINDOWS(handle, br_lck, plock, blr) ((handle)->vfs_next.ops.brl_cancel_windows((handle)->vfs_next.handles.brl_cancel_windows, (br_lck), (plock), (blr)))
blr               884 source3/locking/brlock.c 		struct blocking_lock_record *blr)
blr               911 source3/locking/brlock.c 		    &lock, blocking_lock, blr);
blr              1357 source3/locking/brlock.c 		struct blocking_lock_record *blr)
blr              1373 source3/locking/brlock.c 		    &lock, blr);
blr               242 source3/locking/locking.c 			struct blocking_lock_record *blr)
blr               280 source3/locking/locking.c 			blr);
blr               346 source3/locking/locking.c 			struct blocking_lock_record *blr)
blr               374 source3/locking/locking.c 			blr);
blr                97 source3/modules/onefs.h 				struct blocking_lock_record *blr);
blr               107 source3/modules/onefs.h 			      struct blocking_lock_record *blr);
blr                49 source3/modules/onefs_cbrl.c static char *onefs_cbrl_blr_state_str(const struct blocking_lock_record *blr)
blr                54 source3/modules/onefs_cbrl.c 	SMB_ASSERT(blr);
blr                56 source3/modules/onefs_cbrl.c 	bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr                87 source3/modules/onefs_cbrl.c 	struct blocking_lock_record *blr;
blr                94 source3/modules/onefs_cbrl.c 	for (blr = blocking_lock_queue; blr; blr = blr->next)
blr                95 source3/modules/onefs_cbrl.c 		DEBUGADD(10, ("%s\n", onefs_cbrl_blr_state_str(blr)));
blr               100 source3/modules/onefs_cbrl.c 	struct blocking_lock_record *blr;
blr               105 source3/modules/onefs_cbrl.c 	for (blr = blocking_lock_queue; blr; blr = blr->next) {
blr               106 source3/modules/onefs_cbrl.c 		bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr               114 source3/modules/onefs_cbrl.c 			    onefs_cbrl_blr_state_str(blr)));
blr               119 source3/modules/onefs_cbrl.c 	if (blr == NULL) {
blr               124 source3/modules/onefs_cbrl.c 	return blr;
blr               129 source3/modules/onefs_cbrl.c 	struct blocking_lock_record *blr;
blr               136 source3/modules/onefs_cbrl.c 	blr = onefs_cbrl_find_blr(id);
blr               137 source3/modules/onefs_cbrl.c 	if (blr == NULL)
blr               140 source3/modules/onefs_cbrl.c 	bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr               144 source3/modules/onefs_cbrl.c 	blr->lock_num++;
blr               146 source3/modules/onefs_cbrl.c 	num_locks = SVAL(blr->req->vwv+7, 0);
blr               148 source3/modules/onefs_cbrl.c 	if (blr->lock_num == num_locks)
blr               155 source3/modules/onefs_cbrl.c 	contend_level2_oplocks_begin(blr->fsp,
blr               164 source3/modules/onefs_cbrl.c 	struct blocking_lock_record *blr;
blr               170 source3/modules/onefs_cbrl.c 	blr = onefs_cbrl_find_blr(id);
blr               171 source3/modules/onefs_cbrl.c 	if (blr == NULL)
blr               174 source3/modules/onefs_cbrl.c 	bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr               252 source3/modules/onefs_cbrl.c 				struct blocking_lock_record *blr)
blr               306 source3/modules/onefs_cbrl.c 	if (!pending && blr) {
blr               308 source3/modules/onefs_cbrl.c 		bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr               328 source3/modules/onefs_cbrl.c 		SMB_ASSERT(blr);
blr               345 source3/modules/onefs_cbrl.c 			blr->blr_private = talloc(blr, struct onefs_cbrl_blr_state);
blr               350 source3/modules/onefs_cbrl.c 		bs = (struct onefs_cbrl_blr_state *)blr->blr_private;
blr               431 source3/modules/onefs_cbrl.c 			      struct blocking_lock_record *blr)
blr               441 source3/modules/onefs_cbrl.c 	SMB_ASSERT(blr);
blr               445 source3/modules/onefs_cbrl.c 	bs = ((struct onefs_cbrl_blr_state *)blr->blr_private);
blr              1188 source3/modules/vfs_default.c 					 struct blocking_lock_record *blr)
blr              1209 source3/modules/vfs_default.c 				       struct blocking_lock_record *blr)
blr               228 source3/modules/vfs_full_audit.c 						struct blocking_lock_record *blr);
blr               236 source3/modules/vfs_full_audit.c 					      struct blocking_lock_record *blr);
blr              1734 source3/modules/vfs_full_audit.c 						struct blocking_lock_record *blr)
blr              1739 source3/modules/vfs_full_audit.c 	    blocking_lock, blr);
blr              1768 source3/modules/vfs_full_audit.c 					      struct blocking_lock_record *blr)
blr              1772 source3/modules/vfs_full_audit.c 	result = SMB_VFS_NEXT_BRL_CANCEL_WINDOWS(handle, br_lck, plock, blr);
blr                73 source3/smbd/blocking.c 	struct blocking_lock_record *blr;
blr                80 source3/smbd/blocking.c 	for (blr = blocking_lock_queue; blr; blr = blr->next) {
blr                81 source3/smbd/blocking.c 		if (timeval_is_zero(&blr->expire_time)) {
blr                87 source3/smbd/blocking.c                         if (blr->blocking_pid == 0xFFFFFFFF) {
blr                95 source3/smbd/blocking.c 		next_timeout = timeval_brl_min(&next_timeout, &blr->expire_time);
blr               138 source3/smbd/blocking.c 	struct blocking_lock_record *blr;
blr               151 source3/smbd/blocking.c 	blr = talloc(NULL, struct blocking_lock_record);
blr               152 source3/smbd/blocking.c 	if (blr == NULL) {
blr               157 source3/smbd/blocking.c 	blr->next = NULL;
blr               158 source3/smbd/blocking.c 	blr->prev = NULL;
blr               160 source3/smbd/blocking.c 	blr->fsp = fsp;
blr               162 source3/smbd/blocking.c 		blr->expire_time.tv_sec = 0;
blr               163 source3/smbd/blocking.c 		blr->expire_time.tv_usec = 0; /* Never expire. */
blr               165 source3/smbd/blocking.c 		blr->expire_time = timeval_current_ofs(lock_timeout/1000,
blr               168 source3/smbd/blocking.c 	blr->lock_num = lock_num;
blr               169 source3/smbd/blocking.c 	blr->lock_pid = lock_pid;
blr               170 source3/smbd/blocking.c 	blr->blocking_pid = blocking_pid;
blr               171 source3/smbd/blocking.c 	blr->lock_flav = lock_flav;
blr               172 source3/smbd/blocking.c 	blr->lock_type = lock_type;
blr               173 source3/smbd/blocking.c 	blr->offset = offset;
blr               174 source3/smbd/blocking.c 	blr->count = count;
blr               177 source3/smbd/blocking.c 	blr->blr_private = NULL;
blr               187 source3/smbd/blocking.c 			blr->lock_flav,
blr               190 source3/smbd/blocking.c 			blr);
blr               194 source3/smbd/blocking.c 		TALLOC_FREE(blr);
blr               199 source3/smbd/blocking.c 	blr->req = talloc_move(blr, &req);
blr               201 source3/smbd/blocking.c 	DLIST_ADD_END(blocking_lock_queue, blr, struct blocking_lock_record *);
blr               213 source3/smbd/blocking.c 		(unsigned int)blr->expire_time.tv_sec,
blr               214 source3/smbd/blocking.c 		(unsigned int)blr->expire_time.tv_usec, lock_timeout,
blr               215 source3/smbd/blocking.c 		blr->fsp->fnum, blr->fsp->fsp_name ));
blr               218 source3/smbd/blocking.c 	srv_defer_sign_response(blr->req->mid);
blr               227 source3/smbd/blocking.c static void reply_lockingX_success(struct blocking_lock_record *blr)
blr               229 source3/smbd/blocking.c 	reply_outbuf(blr->req, 2, 0);
blr               239 source3/smbd/blocking.c 	chain_reply(blr->req);
blr               240 source3/smbd/blocking.c 	TALLOC_FREE(blr->req->outbuf);
blr               247 source3/smbd/blocking.c static void generic_blocking_lock_error(struct blocking_lock_record *blr, NTSTATUS status)
blr               257 source3/smbd/blocking.c 		files_struct *fsp = blr->fsp;
blr               260 source3/smbd/blocking.c 			fsp->last_lock_failure.context.smbpid = blr->lock_pid;
blr               263 source3/smbd/blocking.c 			fsp->last_lock_failure.start = blr->offset;
blr               264 source3/smbd/blocking.c 			fsp->last_lock_failure.size = blr->count;
blr               267 source3/smbd/blocking.c 			fsp->last_lock_failure.lock_flav = blr->lock_flav;
blr               271 source3/smbd/blocking.c 	reply_nterror(blr->req, status);
blr               272 source3/smbd/blocking.c 	if (!srv_send_smb(smbd_server_fd(), (char *)blr->req->outbuf,
blr               273 source3/smbd/blocking.c 			  blr->req->encrypted, NULL)) {
blr               276 source3/smbd/blocking.c 	TALLOC_FREE(blr->req->outbuf);
blr               284 source3/smbd/blocking.c static void reply_lockingX_error(struct blocking_lock_record *blr, NTSTATUS status)
blr               286 source3/smbd/blocking.c 	files_struct *fsp = blr->fsp;
blr               287 source3/smbd/blocking.c 	uint16 num_ulocks = SVAL(blr->req->vwv+6, 0);
blr               290 source3/smbd/blocking.c 	unsigned char locktype = CVAL(blr->req->vwv+3, 0);
blr               295 source3/smbd/blocking.c 	data = (uint8_t *)blr->req->buf
blr               309 source3/smbd/blocking.c 	for(i = blr->lock_num - 1; i >= 0; i--) {
blr               329 source3/smbd/blocking.c 	generic_blocking_lock_error(blr, status);
blr               336 source3/smbd/blocking.c static void blocking_lock_reply_error(struct blocking_lock_record *blr, NTSTATUS status)
blr               338 source3/smbd/blocking.c 	DEBUG(10, ("Replying with error=%s. BLR = %p\n", nt_errstr(status), blr));
blr               340 source3/smbd/blocking.c 	switch(blr->req->cmd) {
blr               342 source3/smbd/blocking.c 		reply_lockingX_error(blr, status);
blr               346 source3/smbd/blocking.c 		reply_nterror(blr->req, status);
blr               352 source3/smbd/blocking.c 		SCVAL(blr->req->outbuf,smb_com,SMBtrans2);
blr               355 source3/smbd/blocking.c 				  (char *)blr->req->outbuf,
blr               356 source3/smbd/blocking.c 				  IS_CONN_ENCRYPTED(blr->fsp->conn),
blr               361 source3/smbd/blocking.c 		TALLOC_FREE(blr->req->outbuf);
blr               374 source3/smbd/blocking.c static bool process_lockingX(struct blocking_lock_record *blr)
blr               376 source3/smbd/blocking.c 	unsigned char locktype = CVAL(blr->req->vwv+3, 0);
blr               377 source3/smbd/blocking.c 	files_struct *fsp = blr->fsp;
blr               378 source3/smbd/blocking.c 	uint16 num_ulocks = SVAL(blr->req->vwv+6, 0);
blr               379 source3/smbd/blocking.c 	uint16 num_locks = SVAL(blr->req->vwv+7, 0);
blr               386 source3/smbd/blocking.c 	data = (uint8_t *)blr->req->buf
blr               394 source3/smbd/blocking.c 	for(; blr->lock_num < num_locks; blr->lock_num++) {
blr               398 source3/smbd/blocking.c 		lock_pid = get_lock_pid( data, blr->lock_num, large_file_format);
blr               399 source3/smbd/blocking.c 		count = get_lock_count( data, blr->lock_num, large_file_format);
blr               400 source3/smbd/blocking.c 		offset = get_lock_offset( data, blr->lock_num, large_file_format, &err);
blr               417 source3/smbd/blocking.c 				&blr->blocking_pid,
blr               418 source3/smbd/blocking.c 				blr);
blr               427 source3/smbd/blocking.c 	if(blr->lock_num == num_locks) {
blr               435 source3/smbd/blocking.c 		reply_lockingX_success(blr);
blr               446 source3/smbd/blocking.c 		blocking_lock_reply_error(blr, status);
blr               456 source3/smbd/blocking.c 		  blr->lock_num, num_locks, fsp->fsp_name, fsp->fnum));
blr               466 source3/smbd/blocking.c static bool process_trans2(struct blocking_lock_record *blr)
blr               471 source3/smbd/blocking.c 						blr->fsp,
blr               472 source3/smbd/blocking.c 						blr->lock_pid,
blr               473 source3/smbd/blocking.c 						blr->count,
blr               474 source3/smbd/blocking.c 						blr->offset,
blr               475 source3/smbd/blocking.c 						blr->lock_type,
blr               476 source3/smbd/blocking.c 						blr->lock_flav,
blr               479 source3/smbd/blocking.c 						&blr->blocking_pid,
blr               480 source3/smbd/blocking.c 						blr);
blr               492 source3/smbd/blocking.c 		blocking_lock_reply_error(blr, status);
blr               500 source3/smbd/blocking.c 	send_trans2_replies(blr->fsp->conn, blr->req, params, 2, NULL, 0, 0xffff);
blr               510 source3/smbd/blocking.c static bool blocking_lock_record_process(struct blocking_lock_record *blr)
blr               512 source3/smbd/blocking.c 	switch(blr->req->cmd) {
blr               514 source3/smbd/blocking.c 			return process_lockingX(blr);
blr               517 source3/smbd/blocking.c 			return process_trans2(blr);
blr               531 source3/smbd/blocking.c 	struct blocking_lock_record *blr, *blr_cancelled, *next = NULL;
blr               533 source3/smbd/blocking.c 	for(blr = blocking_lock_queue; blr; blr = next) {
blr               536 source3/smbd/blocking.c 		next = blr->next;
blr               537 source3/smbd/blocking.c 		if (blr->fsp->fnum != fsp->fnum) {
blr               541 source3/smbd/blocking.c 		if (blr->req->cmd == SMBlockingX) {
blr               542 source3/smbd/blocking.c 			locktype = CVAL(blr->req->vwv+3, 0);
blr               547 source3/smbd/blocking.c 			   blr->req->cmd, fsp->fsp_name, fsp->fnum));
blr               550 source3/smbd/blocking.c 				     blr->lock_pid,
blr               551 source3/smbd/blocking.c 				     blr->offset,
blr               552 source3/smbd/blocking.c 				     blr->count,
blr               553 source3/smbd/blocking.c 				     blr->lock_flav,
blr               557 source3/smbd/blocking.c 		SMB_ASSERT(blr_cancelled == blr);
blr               560 source3/smbd/blocking.c 				blr->lock_pid,
blr               562 source3/smbd/blocking.c 				blr->offset,
blr               563 source3/smbd/blocking.c 				blr->count,
blr               564 source3/smbd/blocking.c 				blr->lock_flav,
blr               565 source3/smbd/blocking.c 				blr);
blr               569 source3/smbd/blocking.c 		blr->fsp = NULL;
blr               579 source3/smbd/blocking.c 	struct blocking_lock_record *blr, *next = NULL;
blr               581 source3/smbd/blocking.c 	for(blr = blocking_lock_queue; blr; blr = next) {
blr               585 source3/smbd/blocking.c 		next = blr->next;
blr               587 source3/smbd/blocking.c 		if (blr->req->mid != mid) {
blr               591 source3/smbd/blocking.c 		fsp = blr->fsp;
blr               597 source3/smbd/blocking.c 				   "= %d\n", blr->req->cmd, fsp->fsp_name,
blr               601 source3/smbd/blocking.c 					blr->lock_pid,
blr               603 source3/smbd/blocking.c 					blr->offset,
blr               604 source3/smbd/blocking.c 					blr->count,
blr               605 source3/smbd/blocking.c 					blr->lock_flav,
blr               606 source3/smbd/blocking.c 					blr);
blr               610 source3/smbd/blocking.c 		blocking_lock_reply_error(blr,NT_STATUS_FILE_LOCK_CONFLICT);
blr               611 source3/smbd/blocking.c 		DLIST_REMOVE(blocking_lock_queue, blr);
blr               612 source3/smbd/blocking.c 		TALLOC_FREE(blr);
blr               622 source3/smbd/blocking.c 	struct blocking_lock_record *blr, *next = NULL;
blr               624 source3/smbd/blocking.c 	for(blr = blocking_lock_queue; blr; blr = next) {
blr               625 source3/smbd/blocking.c 		next = blr->next;
blr               626 source3/smbd/blocking.c 		if(blr->req->mid == mid) {
blr               654 source3/smbd/blocking.c 	struct blocking_lock_record *blr, *next = NULL;
blr               661 source3/smbd/blocking.c 	for (blr = blocking_lock_queue; blr; blr = next) {
blr               663 source3/smbd/blocking.c 		next = blr->next;
blr               671 source3/smbd/blocking.c 		DEBUG(10, ("Processing BLR = %p\n", blr));
blr               673 source3/smbd/blocking.c 		if(blocking_lock_record_process(blr)) {
blr               675 source3/smbd/blocking.c 				talloc_tos(), blr->fsp);
blr               678 source3/smbd/blocking.c 			    "removing lock. BLR = %p\n", blr));
blr               682 source3/smbd/blocking.c 					blr->lock_pid,
blr               684 source3/smbd/blocking.c 					blr->offset,
blr               685 source3/smbd/blocking.c 					blr->count,
blr               686 source3/smbd/blocking.c 					blr->lock_flav,
blr               687 source3/smbd/blocking.c 					blr);
blr               691 source3/smbd/blocking.c 			DLIST_REMOVE(blocking_lock_queue, blr);
blr               692 source3/smbd/blocking.c 			TALLOC_FREE(blr);
blr               702 source3/smbd/blocking.c 		if (!timeval_is_zero(&blr->expire_time) && timeval_compare(&blr->expire_time, &tv_curr) <= 0) {
blr               704 source3/smbd/blocking.c 				talloc_tos(), blr->fsp);
blr               706 source3/smbd/blocking.c 			DEBUG(10, ("Lock timed out! BLR = %p\n", blr));
blr               716 source3/smbd/blocking.c 					 "timed out.\n", blr->fsp->fnum,
blr               717 source3/smbd/blocking.c 					 blr->fsp->fsp_name ));
blr               720 source3/smbd/blocking.c 					blr->lock_pid,
blr               722 source3/smbd/blocking.c 					blr->offset,
blr               723 source3/smbd/blocking.c 					blr->count,
blr               724 source3/smbd/blocking.c 					blr->lock_flav,
blr               725 source3/smbd/blocking.c 					blr);
blr               729 source3/smbd/blocking.c 			blocking_lock_reply_error(blr,NT_STATUS_FILE_LOCK_CONFLICT);
blr               730 source3/smbd/blocking.c 			DLIST_REMOVE(blocking_lock_queue, blr);
blr               731 source3/smbd/blocking.c 			TALLOC_FREE(blr);
blr               755 source3/smbd/blocking.c 	struct blocking_lock_record *blr;
blr               767 source3/smbd/blocking.c 	memcpy(&blr, msg, sizeof(blr));
blr               768 source3/smbd/blocking.c 	memcpy(&err, &msg[sizeof(blr)], sizeof(NTSTATUS));
blr               773 source3/smbd/blocking.c 	blocking_lock_reply_error(blr, err);
blr               774 source3/smbd/blocking.c 	DLIST_REMOVE(blocking_lock_cancelled_queue, blr);
blr               775 source3/smbd/blocking.c 	TALLOC_FREE(blr);
blr               792 source3/smbd/blocking.c 	struct blocking_lock_record *blr;
blr               803 source3/smbd/blocking.c 	for (blr = blocking_lock_queue; blr; blr = blr->next) {
blr               804 source3/smbd/blocking.c 		if (fsp == blr->fsp &&
blr               805 source3/smbd/blocking.c 				lock_pid == blr->lock_pid &&
blr               806 source3/smbd/blocking.c 				offset == blr->offset &&
blr               807 source3/smbd/blocking.c 				count == blr->count &&
blr               808 source3/smbd/blocking.c 				lock_flav == blr->lock_flav) {
blr               813 source3/smbd/blocking.c 	if (!blr) {
blr               818 source3/smbd/blocking.c 	if (blr->req->cmd == SMBlockingX &&
blr               820 source3/smbd/blocking.c 			(CVAL(blr->req->vwv+3, 0) & LOCKING_ANDX_LARGE_FILES)) {
blr               825 source3/smbd/blocking.c 	DLIST_REMOVE(blocking_lock_queue, blr);
blr               826 source3/smbd/blocking.c 	DLIST_ADD(blocking_lock_cancelled_queue, blr);
blr               829 source3/smbd/blocking.c 	memcpy(msg, &blr, sizeof(blr));
blr               830 source3/smbd/blocking.c 	memcpy(&msg[sizeof(blr)], &err, sizeof(NTSTATUS));
blr               836 source3/smbd/blocking.c 	return blr;
blr              7098 source3/smbd/reply.c 			struct blocking_lock_record *blr = NULL;
blr              7106 source3/smbd/reply.c 				blr = blocking_lock_cancel(fsp,
blr              7113 source3/smbd/reply.c 				if (blr == NULL) {
blr              7129 source3/smbd/reply.c 						blr);