David Eliot McGiffert, 79, a retired Washington lawyer who also was a high-ranking Defense Department official for many years, died of a heart ailment Oct. 12 at his home in Washington.

Mr. McGiffert worked for the government for more than two decades, beginning in the early 1960s as an assistant on legislative affairs to then-Defense Secretary Robert S. McNamara.

He then served as undersecretary of the Army with myriad responsibilities, including the administration of Okinawa and the Panama Canal Zone.

He also oversaw federal management and control of domestic civic unrest, particularly Vietnam War protests.

In a memo published in McNamara's book, "In Retrospect," Mr. McGiffert wrote about the challenges confronted by his office at a time of political and social turmoil in American society.

"We must avoid either overreacting or under-reacting," Mr. McGiffert wrote in reference to upholding constitutional rights of free assembly while also protecting government operations. "We must behave with dignity and fairness."

Mr. McGiffert, whose government career was interspersed with his law practice, served as assistant secretary of defense for international security from 1977 to 1981. In that position, he was a key negotiator with the Soviet Union on arms control, helped open defense discussions with China and accompanied then-Secretary of Defense Harold Brown on the first visit of a U.S. defense secretary to China.

In 1978, after the Camp David peace accords, he led the U.S. team charged with providing security assistance to Egypt and Israel as part of the implementation of the Sinai withdrawal.

In private practice, Mr. McGiffert specialized in international arbitration and government regulation with the law firm Covington & Burling in Washington. Among his clients were U.S. companies with claims against the Iranian government. He litigated those cases before the U.S.-Iranian Claims Tribunal in The Hague.

Mr. McGiffert, who retired in 1996, was a member of the Council on Foreign Relations and of the boards of the Atlantic Council and the Center for Naval Analysis, which he chaired from 1997 to 2003.

He was born in Massachusetts, where his great-grandfather, Charles William Eliot, was president of Harvard University from 1869 to 1909.

After serving in the Navy, Mr. McGiffert graduated from Harvard in 1949 and its law school in 1953.

A lifelong sailor, he enjoyed cruising the Maine coast, where he spent summers with his family on Mount Desert Island.

His marriages to Sylvia McGiffert, Enud McGiffert and Cooby McGiffert ended in divorce.

Survivors include his companion of 13 years, Mitzi Wertheim of Washington; two daughters from his second marriage, Carola McGiffert and Laura McGiffert, both of Washington; two stepdaughters, Katherine Winder of Washington and Nelse Winder of Boston; a sister; and four grandchildren.

David McGiffert began working for the government in the '60s.